|LWP fix.patch | (download)
7 7 + 0 - 0 !
21 20 + 1 - 0 !
2 files changed, 27 insertions(+), 1 deletion(-)
fix for incompatability with lwp 6.x under persistent environments
LWP::UserAgent::credentials and LWP::UserAgent::get_basic_credentials changed at some
point around after 5.805 and before 6.02. Also, LWP::Authen::Basic changed.
Authen::Simple::HTTP implements credential handling by overriding the
get_basic_credentials methods in LWP::UserAgent (or the given LWP class).
This breaks with the new LWP because Authen::Simple::HTTP keeps the LWP::UserAgent
instance as class data (Class::Data::Inheritable), so a new instance of LWP isn't
created for every new Authen::Simple::HTTP... and LWP is caching the user/pass per
instance (per host+port+realm) via the credentials sub in an instance variable.