Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 493428

Summary: unable to register client via proxy
Product: Red Hat Satellite Proxy 5 Reporter: wes hayutin <whayutin>
Component: ServerAssignee: Miroslav Suchý <msuchy>
Status: CLOSED CURRENTRELEASE QA Contact: Jan Pazdziora (Red Hat) <jpazdziora>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 530CC: bperkins, mmraka, pthomas
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
URL: na
Whiteboard:
Fixed In Version: sat530 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-09-10 14:38:17 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 494524    
Bug Blocks: 456999    

Description wes hayutin 2009-04-01 17:59:42 UTC
Description of problem:
unable to register client via proxy

Satellite-5.3.0-RHEL5-re20090327.0-i386-embedded-oracle.iso
proxy 5.3.0

Comment 1 wes hayutin 2009-04-01 18:01:46 UTC
An error has occurred:

Error Message:
    RHN Proxy error (auth caching issue). Please contact your system administrator.
Error Class Code: 1000
Error Class Info: RHN Proxy error.
Explanation: 
     An error has occurred while processing your request. If this problem
     persists please enter a bug report at bugzilla.redhat.com.
     If you choose to submit the bug report, please be sure to include
     details of what you were trying to do when this error occurred and
     details on how to reproduce this problem.


[Wed Apr  1 13:47:57 2009] up2date 
Traceback (most recent call last):
  File "/usr/sbin/rhnreg_ks", line 266, in ?
    cli.run()
  File "/usr/share/rhn/up2date_client/rhncli.py", line 65, in run
    sys.exit(self.main() or 0)
  File "/usr/sbin/rhnreg_ks", line 90, in main
    rhnreg.getCaps()
  File "/usr/share/rhn/up2date_client/rhnreg.py", line 329, in getCaps
    s.capabilities.validate()
  File "/usr/share/rhn/up2date_client/rhnserver.py", line 156, in __get_capabili
ties
    self.registration.welcome_message()
  File "/usr/share/rhn/up2date_client/rhnserver.py", line 52, in __call__
    raise self.__exception_from_fault(f)
up2date_client.up2dateErrors.CommunicationError: Error communicating with server
. The message was:

Error Message:
    RHN Proxy error (auth caching issue). Please contact your system administrat
or.
Error Class Code: 1000

Comment 2 wes hayutin 2009-04-01 18:02:14 UTC
xception reported from dhcp77-135.rhndev.redhat.com
Time: Wed Apr  1 13:47:57 2009
Exception type exceptions.OSError
Exception while handling function ProxyAuth.set_cached_token
Extra information about this error:
Caching of authentication token for proxy id 1000010220 failed!
Either the authentication caching daemon is experiencing
problems, isn't running, or the token is somehow corrupt.


Exception Handler Information
Traceback (most recent call last):
  File "/usr/share/rhn/proxy/rhnProxyAuth.py", line 145, in set_cached_token
    shelf[self.__cache_proxy_key()] = token
  File "/usr/share/rhn/proxy/rhnProxyAuth.py", line 391, in __setitem__
    return rhnCache.set(rkey, val)
  File "/usr/share/rhn/common/rhnCache.py", line 83, in set
    cache.set(name, value, modified)
  File "/usr/share/rhn/common/rhnCache.py", line 354, in set
    self.cache.set(name, pickled, modified)
  File "/usr/share/rhn/common/rhnCache.py", line 248, in set
    fd = self.set_file(name, modified)
  File "/usr/share/rhn/common/rhnCache.py", line 280, in set_file
    fd = WriteLockedFile(name, modified)
  File "/usr/share/rhn/common/rhnCache.py", line 177, in __init__
    self.fd = self.get_fd(name)
  File "/usr/share/rhn/common/rhnCache.py", line 220, in get_fd
    fd = _safe_create(self.fname)
  File "/usr/share/rhn/common/rhnCache.py", line 151, in _safe_create
    fd = os.open(fname, os.O_WRONLY | os.O_CREAT | os.O_EXCL, 0644)
OSError: [Errno 13] Permission denied: '/var/cache/rhn/proxy-auth/p1000010220'

Local variables by frame
Frame _safe_create in /usr/share/rhn/common/rhnCache.py at line 158
                       tries = <type 'int'> 4
                     dirname = <type 'str'> /var/cache/rhn/proxy-auth
                           e = <type 'instance'> [Errno 13] Permission denied: '/var/cache/rhn/proxy-auth/p1000010220'
                       fname = <type 'str'> /var/cache/rhn/proxy-auth/p1000010220

Frame get_fd in /usr/share/rhn/common/rhnCache.py at line 222
                        self = <class 'common.rhnCache.WriteLockedFile'> <common.rhnCache.WriteLockedFile object at 0xb7ca8fec>
                        name = <type 'str'> proxy-auth/p1000010220

Frame __init__ in /usr/share/rhn/common/rhnCache.py at line 177
                        self = <class 'common.rhnCache.WriteLockedFile'> <common.rhnCache.WriteLockedFile object at 0xb7ca8fec>
                    modified = <type 'NoneType'> None
                        name = <type 'str'> proxy-auth/p1000010220

Frame set_file in /usr/share/rhn/common/rhnCache.py at line 280
                        self = <type 'instance'> <common.rhnCache.Cache instance at 0xb7ca8fcc>
                    modified = <type 'NoneType'> None
                        name = <type 'str'> proxy-auth/p1000010220

Frame set in /usr/share/rhn/common/rhnCache.py at line 248
                        self = <type 'instance'> <common.rhnCache.Cache instance at 0xb7ca8fcc>
                    modified = <type 'NoneType'> None
                       value = <type 'str'> UV1000010220::1238608077.3:21600.0:sbO/y3JWRKspkB5Pzs1y/Q==:dhcp77-135.rhndev.redhat.comq.
                        name = <type 'str'> proxy-auth/p1000010220

Frame set in /usr/share/rhn/common/rhnCache.py at line 354
                        name = <type 'str'> proxy-auth/p1000010220
                        self = <type 'instance'> <common.rhnCache.ObjectCache instance at 0xb7ca8ecc>
                     pickled = <type 'str'> UV1000010220::1238608077.3:21600.0:sbO/y3JWRKspkB5Pzs1y/Q==:dhcp77-135.rhndev.redhat.comq.
                       value = <type 'str'> 1000010220::1238608077.3:21600.0:sbO/y3JWRKspkB5Pzs1y/Q==:dhcp77-135.rhndev.redhat.com
                    modified = <type 'NoneType'> None

Frame set in /usr/share/rhn/common/rhnCache.py at line 83
                        name = <type 'str'> proxy-auth/p1000010220
                       cache = <type 'instance'> <common.rhnCache.ObjectCache instance at 0xb7ca8ecc>
                    modified = <type 'NoneType'> None
                       value = <type 'str'> 1000010220::1238608077.3:21600.0:sbO/y3JWRKspkB5Pzs1y/Q==:dhcp77-135.rhndev.redhat.com
                         raw = <type 'NoneType'> None
                  compressed = <type 'NoneType'> None

Frame __setitem__ in /usr/share/rhn/proxy/rhnProxyAuth.py at line 391
                        self = <type 'instance'> <proxy.rhnProxyAuth.AuthLocalBackend instance at 0xb7ca8eec>
                        rkey = <type 'str'> proxy-auth/p1000010220
                         key = <type 'str'> p1000010220
                         val = <type 'str'> 1000010220::1238608077.3:21600.0:sbO/y3JWRKspkB5Pzs1y/Q==:dhcp77-135.rhndev.redhat.com

Frame set_cached_token in /usr/share/rhn/proxy/rhnProxyAuth.py at line 152
                        text = <type 'str'> Caching of authentication token for proxy id 1000010220 failed!
Either the authentication caching daemon is experiencing
problems, isn't running, or the token is somehow corrupt.

                       token = <type 'str'> 1000010220::1238608077.3:21600.0:sbO/y3JWRKspkB5Pzs1y/Q==:dhcp77-135.rhndev.redhat.com
                        self = <type 'instance'> <proxy.rhnProxyAuth.ProxyAuth instance at 0xb7d07a8c>
                       shelf = <type 'instance'> <proxy.rhnProxyAuth.AuthLocalBackend instance at 0xb7ca8eec>

Frame check_cached_token in /usr/share/rhn/proxy/rhnProxyAuth.py at line 122
                       token = <type 'str'> 1000010220::1238608077.3:21600.0:sbO/y3JWRKspkB5Pzs1y/Q==:dhcp77-135.rhndev.redhat.com
                forceRefresh = <type 'int'> 0
                    oldToken = <type 'NoneType'> None
                        self = <type 'instance'> <proxy.rhnProxyAuth.ProxyAuth instance at 0xb7d07a8c>

Frame handler in /usr/share/rhn/proxy/broker/rhnBroker.py at line 180
                   client_ip = <type 'str'> 10.10.76.174
                     ip_path = <type 'str'> 10.10.76.174
                        _oto = <type 'instance'> {'content-length': '122', 'x-client-version': '1', 'accept-encoding': 'identity', 'x-transport-info': 'Extended Capabilities Transport (C) Red Hat, Inc (version 136589)', 'x-up2date-version': '0.4.19-17.el5', 'user-agent': 'rhn.rpclib.py/$Revision: 136589 $', 'x-rhn-ip-path': '10.10.76.174', 'host': 'dhcp77-135.rhndev.redhat.com', 'x-rhn-transport-capability': 'follow-redirects=3', 'x-info': 'RPC Processor (C) Red Hat, Inc (version 135431)', 'content-type': 'text/xml', 'x-rhn-client-capability': 'packages.verifyAll(1)=1,packages.verify(1)=1,packages.extended_profile(1)=1,configfiles.base64_enc(1)=1,reboot.reboot(1)=1,configfiles.deploy(1)=1,caneatCheese(1)=1,packages.rollBack(1)=1,configfiles.mtime_upload(1)=1,configfiles.diff(1)=1,packages.update(2)=2,script.run(1)=1,configfiles.upload(1)=1,packages.runTransaction(1)=1'}
                   getResult = <type 'NoneType'> None
                        self = <type 'instance'> <proxy.broker.rhnBroker.BrokerHandler instance at 0xb7d074ec>

Frame handler in /usr/share/rhn/proxy/apacheHandler.py at line 348
                  handlerObj = <type 'instance'> <proxy.broker.rhnBroker.BrokerHandler instance at 0xb7d074ec>
                        self = <type 'instance'> <proxy.apacheHandler.apacheHandler instance at 0xb7cfd0cc>
                         req = <type 'mp_request'> <mp_request object at 0xb7edfd2c>
                         ret = <type 'int'> 0
                   rhnBroker = <type 'module'> <module 'proxy.broker.rhnBroker' from '/usr/share/rhn/proxy/broker/rhnBroker.pyc'>

Frame __call__ in /usr/share/rhn/proxy/apacheServer.py at line 66
                        self = <type 'instance'> <proxy.apacheServer.HandlerWrap instance at 0xb7e147ac>
                         req = <type 'mp_request'> <mp_request object at 0xb7edfd2c>
                           f = <type 'instancemethod'> <bound method apacheHandler.handler of <proxy.apacheHandler.apacheHandler instance at 0xb7cfd0cc>>

Frame HandlerDispatch in /usr/lib/python2.4/site-packages/mod_python/apache.py at line 299
                         req = <type 'mp_request'> <mp_request object at 0xb7edfd2c>
                      config = <type 'mp_table'> {'PythonPath': 'sys.path+['/usr/share/rhn']'}
                        self = <type 'instance'> <mod_python.apache.CallBack instance at 0xb7eed72c>
                      object = <type 'instance'> <proxy.apacheServer.HandlerWrap instance at 0xb7e147ac>
                           l = <type 'list'> ['proxy.apacheServer', 'Handler']
                      module = <type 'module'> <module 'proxy.apacheServer' from '/usr/share/rhn/proxy/apacheServer.pyc'>
                       hlist = <type 'mp_hlist'> {'handler:'proxy.apacheServer::Handler','directory':'^/*/','silent':0}
                  object_str = <type 'str'> Handler
                       debug = <type 'int'> 0
                 module_name = <type 'str'> proxy.apacheServer
                  pathstring = <type 'str'> sys.path+['/usr/share/rhn']
                      result = <type 'int'> 500


Environment for PID=2088 on exception:
LANG = C
PATH = /sbin:/usr/sbin:/bin:/usr/bin
PWD = /
SHLVL = 2
TERM = xterm
_ = /usr/sbin/httpd

Comment 3 Miroslav Suchý 2009-04-07 10:02:21 UTC
Did you have selinux in enforcing?
When I have selinux in permissive I 
I'm getting this error when I have selinux enforcing and package spacewalk-proxy-selinux is not installed. 

Hmm. Looking in webqa there is no package spacewalk-proxy-selinux and no one package require it. Will file in rel-eng ticket.

Comment 4 Miroslav Suchý 2009-04-07 10:20:15 UTC
Filed rel-eng ticket 38980 to include spacewalk-proxy-selinux in proxy rhel5 comps.

Comment 5 Miroslav Suchý 2009-04-10 12:00:00 UTC
Ticket resolved.
I will wait till 494524 is resolved to add the dependency on spacewalk-proxy-selinux

Comment 6 Preethi Thomas 2009-04-30 13:20:19 UTC
I am still seeing this issue with rhel5 proxy. 
Satellite-5.3.0-RHEL5-re20090424.1-i386-embedded-oracle.iso

error from /var/log/up2date
[Thu Apr 30 09:19:18 2009] up2date A socket error occurred: (113, 'No route to host'), attempt #1
[Thu Apr 30 09:19:23 2009] up2date A socket error occurred: (113, 'No route to host'), attempt #2
[Thu Apr 30 09:19:28 2009] up2date A socket error occurred: (113, 'No route to host'), attempt #3
[Thu Apr 30 09:19:33 2009] up2date A socket error occurred: (113, 'No route to host'), attempt #4
[Thu Apr 30 09:19:38 2009] up2date A socket error occurred: (113, 'No route to host'), attempt #5
[Thu Apr 30 09:19:38 2009] up2date No route to host
[Thu Apr 30 09:19:38 2009] up2date   File "/usr/sbin/rhnreg_ks", line 404, in ?
    main()
   File "/usr/sbin/rhnreg_ks", line 284, in main
    rhnreg.getCaps()
   File "/usr/share/rhn/up2date_client/rhnreg.py", line 346, in getCaps
    rpcServer.doCall(s.registration.welcome_message)
   File "/usr/share/rhn/up2date_client/rpcServer.py", line 248, in doCall
    raise up2dateErrors.CommunicationError(e.args[1])

Comment 7 Miroslav Suchý 2009-05-06 13:41:18 UTC
Commited as b628f65ce59fd26e0cf989efd2cb75e947111c2e .. d5c845fa4e781419cb26b6930a8cefae55a1d08f

Comment 9 Jan Pazdziora (Red Hat) 2009-07-01 14:05:42 UTC
With Proxy versions

# rpm -qa | grep proxy
rhn-proxy-branding-5.3.0.24-1.el5sat
spacewalk-proxy-redirect-0.5.7-7.el5sat
spacewalk-proxy-monitoring-0.4.4-3.el5sat
spacewalk-proxy-installer-0.5.25-13.el5sat
spacewalk-proxy-docs-0.4.1-2.el5sat
spacewalk-proxy-common-0.5.7-7.el5sat
spacewalk-proxy-package-manager-0.5.7-7.el5sat
spacewalk-proxy-selinux-0.5.2-6.el5sat
spacewalk-proxy-broker-0.5.7-7.el5sat
spacewalk-proxy-management-0.5.7-7.el5sat

activation of client went without problems, the new system record appeared in Satellite's WebUI in the list of systems and also in Proxy's Systems Using Proxy tab. The record(s) in proxy-auth were created OK:

# ls -laZ /var/cache/rhn/proxy-auth/
drwxr-x---  apache root   system_u:object_r:spacewalk_proxy_cache_t .
drwxr-x---  apache root   system_u:object_r:var_t          ..
-rw-r--r--  apache apache root:object_r:spacewalk_proxy_cache_t 1000010020
-rw-r--r--  apache apache root:object_r:spacewalk_proxy_cache_t p1000010000

Marking as VERIFIED.

Comment 10 Michael Mráka 2009-08-07 09:34:06 UTC
Verified in stage -> RELEASE_PENDING.

* proxy-version:
# rpm -qa | grep proxy
rhn-proxy-branding-5.3.0.27-1.el5sat.noarch
spacewalk-proxy-broker-0.5.7-8.el5sat.noarch
spacewalk-proxy-common-0.5.7-8.el5sat.noarch
spacewalk-proxy-docs-0.4.1-2.el5sat.noarch
spacewalk-proxy-installer-0.5.25-17.el5sat.noarch
spacewalk-proxy-management-0.5.7-8.el5sat.noarch
spacewalk-proxy-monitoring-0.4.4-3.el5sat.noarch
spacewalk-proxy-package-manager-0.5.7-8.el5sat.noarch
spacewalk-proxy-redirect-0.5.7-8.el5sat.noarch
spacewalk-proxy-selinux-0.5.2-7.el5sat.noarch
* selinux contexts:
#  ls -laZ /var/cache/rhn/proxy-auth/
drwxr-x---  apache root   system_u:object_r:spacewalk_proxy_cache_t .
drwxr-x---  apache root   system_u:object_r:var_t          ..
-rw-r--r--  apache apache root:object_r:spacewalk_proxy_cache_t p1000012802
* client registered via proxy w/out errors
* client is available in webUI on Systems Using Proxy page

Comment 11 Brandon Perkins 2009-09-10 14:38:17 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHEA-2009-1433.html