# File lib/puppet/network/http/mongrel/rest.rb, line 67
67:     def client_info(request)
68:         result = {}
69:         params = request.params
70:         result[:ip] = params["HTTP_X_FORWARDED_FOR"] ? params["HTTP_X_FORWARDED_FOR"].split(',').last.strip : params["REMOTE_ADDR"]
71: 
72:         # JJM #906 The following dn.match regular expression is forgiving
73:         # enough to match the two Distinguished Name string contents
74:         # coming from Apache, Pound or other reverse SSL proxies.
75:         if dn = params[Puppet[:ssl_client_header]] and dn_matchdata = dn.match(/^.*?CN\s*=\s*(.*)/)
76:             result[:node] = dn_matchdata[1].to_str
77:             result[:authenticated] = (params[Puppet[:ssl_client_verify_header]] == 'SUCCESS')
78:         else
79:             result[:node] = resolve_node(result)
80:             result[:authenticated] = false
81:         end
82: 
83:         return result
84:     end