Class: HTTPClient::ProxyDigestAuth

Inherits:
DigestAuth show all
Defined in:
lib/httpclient/auth.rb

Overview

Authentication filter for handling DigestAuth negotiation. Ignores uri argument. Used in ProxyAuth.

Instance Attribute Summary

Attributes inherited from DigestAuth

#scheme

Instance Method Summary collapse

Methods inherited from DigestAuth

#initialize, #set?

Constructor Details

This class inherits a constructor from HTTPClient::DigestAuth

Instance Method Details

#challenge(uri, param_str) ⇒ Object



476
477
478
479
480
481
# File 'lib/httpclient/auth.rb', line 476

def challenge(uri, param_str)
  synchronize {
    @challenge = parse_challenge_param(param_str)
    true
  }
end

#get(req) ⇒ Object

overrides DigestAuth#get. Uses default user name and password regardless of target uri if the proxy has required authentication before



460
461
462
463
464
465
466
467
468
# File 'lib/httpclient/auth.rb', line 460

def get(req)
  synchronize {
    param = @challenge
    return nil unless param
    user, passwd = @auth
    return nil unless user
    calc_cred(req, user, passwd, param)
  }
end

#reset_challengeObject



470
471
472
473
474
# File 'lib/httpclient/auth.rb', line 470

def reset_challenge
  synchronize do
    @challenge = nil
  end
end

#set(uri, user, passwd) ⇒ Object

overrides DigestAuth#set. sets default user name and password. uri is not used.



451
452
453
454
455
# File 'lib/httpclient/auth.rb', line 451

def set(uri, user, passwd)
  synchronize do
    @auth = [user, passwd]
  end
end