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



480
481
482
483
484
485
# File 'lib/httpclient/auth.rb', line 480

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



464
465
466
467
468
469
470
471
472
# File 'lib/httpclient/auth.rb', line 464

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



474
475
476
477
478
# File 'lib/httpclient/auth.rb', line 474

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.



455
456
457
458
459
# File 'lib/httpclient/auth.rb', line 455

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