unsupported XML-RPC protocol?

1,947 views
Skip to first unread message

Peter Silva

unread,
Jan 27, 2013, 9:44:53 AM1/27/13
to roster-d...@googlegroups.com

hi folks, tried to set it up, but having trouble getting started, nothing works yet...  

root@wpdeb:~# dnsmkdnsserver dns_server -d trestler
Traceback (most recent call last):
  File "/usr/local/bin/dnsmkdnsserver", line 5, in <module>
    pkg_resources.run_script('RosterUserTools==0.17', 'dnsmkdnsserver')
  File "/usr/local/lib/python2.7/dist-packages/distribute-0.6.34-py2.7.egg/pkg_resources.py", line 505, in run_script
    self.require(requires)[0].run_script(script_name, ns)
  File "/usr/local/lib/python2.7/dist-packages/distribute-0.6.34-py2.7.egg/pkg_resources.py", line 1245, in run_script
    execfile(script_filename, namespace, namespace)
  File "/usr/local/lib/python2.7/dist-packages/RosterUserTools-0.17-py2.7.egg/EGG-INFO/scripts/dnsmkdnsserver", line 138, in <module>
    main(sys.argv[1:])
  File "/usr/local/lib/python2.7/dist-packages/RosterUserTools-0.17-py2.7.egg/EGG-INFO/scripts/dnsmkdnsserver", line 76, in main
    cli_common_lib_instance = cli_common_lib.CliCommonLib(options)
  File "/usr/local/lib/python2.7/dist-packages/RosterUserTools-0.17-py2.7.egg/roster_user_tools/cli_common_lib.py", line 100, in __init__
    roster_client_lib.CheckServerVersionMatch(self.options.server)
  File "/usr/local/lib/python2.7/dist-packages/RosterUserTools-0.17-py2.7.egg/roster_user_tools/roster_client_lib.py", line 253, in CheckServerVersionMatch
    server = xmlrpclib.ServerProxy(server_name, allow_none=True)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1549, in __init__
    raise IOError, "unsupported XML-RPC protocol"
IOError: unsupported XML-RPC protocol
root@wpdeb:~#

I have the self-signed certificate, but the link for how to set that up in the instructions is broken... not sure I did that right.
Is there a way to test that authentication is working?  

John

unread,
Jan 27, 2013, 11:22:05 AM1/27/13
to roster-d...@googlegroups.com
Are you sure the XML-RPC server is running? Are you also sure that you're accessing it on the correct port? In our unittests, our -s arg is always https://localhost:some_port_number 



--
 
 
 

Peter Silva

unread,
Jan 27, 2013, 7:09:34 PM1/27/13
to roster-d...@googlegroups.com
how do I tell?   /etc/roster/roster_server.conf has   port=8000.  rosterd is running, is that the XML-RPC server?
If I browse to it, get nothing...this is on a virtual server, so cannot use localhost.  The log just says it started with a timestamp.
how do I run the self-tests?

Stephen Lien Harrell

unread,
Jan 27, 2013, 7:14:53 PM1/27/13
to roster-d...@googlegroups.com
How did you configure the user tools? What does your roster_user.conf look like? If you don't have one you will need to set the server/port on the command line when you run the tool.

-stephen


--
 
 
 

Peter Silva

unread,
Jan 27, 2013, 7:36:58 PM1/27/13
to roster-d...@googlegroups.com, shar...@purdue.edu
in roster_server.conf, the config verb 'server' expects a server, but in the user tools, it wants a URL... 
OK, changed server entry in roster_user_tools.conf from 'localhost'   to https://wpdep:8000, now it connects, and I get the message:

SERVER ERROR: (2d57f3ac-2257-4904-ba69-10702f734492) No such user: root

I have authentication_method=auth_pam

root is an existing user on this machine.  should it not just prompt me for a password?
so I switch everything back to localhost, and try...

root@wpdeb:/etc/roster# dnscredential make_infinite -U root
Password for root: ----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 60437)
Traceback (most recent call last):
 
It just bombs immediately, never letting me enter a password... 

Stephen Lien Harrell

unread,
Jan 27, 2013, 7:47:29 PM1/27/13
to roster-d...@googlegroups.com
There is no user root in the database, when you did the roster_bootstrap  what user did you say to create? That is the user that needs to be used.

-stephen


--
 
 
 

Peter Silva

unread,
Jan 27, 2013, 8:14:12 PM1/27/13
to roster-d...@googlegroups.com, shar...@purdue.edu
That does not sound right...
Normally, when installing a web app, the username supplied for mysql has nothing to do with what the users see.
I understoo that the username supplied in the bootstrap is the mysql username used by roster to do DB interactions.
It should have no relation to this user...

tried it anyways...

root@wpdeb:/etc/roster# dnsmkdnsserver dns_server -d trestler -u roster
Password for roster: ----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 60441)
Traceback (most recent call last):
  File "/usr/lib/python2.7/SocketServer.py", line 594, in process_request_thread
    self.shutdown_request(request)
  File "/usr/lib/python2.7/SocketServer.py", line 470, in shutdown_request
    request.shutdown(socket.SHUT_WR)
TypeError: shutdown() takes exactly 0 arguments (1 given)
--

It never lets me enter the password, just crashes immediately.

Stephen Lien Harrell

unread,
Jan 27, 2013, 8:31:49 PM1/27/13
to roster-d...@googlegroups.com
It doesn't have a relation to the mysql user. I quote from this wiki page: 


Example Usage:
# roster_database_bootstrap -d <database_name> -n <database_server>
-u <database_user> -U <new_roster_user> --ssl-key <key_file>
--ssl-cert <cert_file> -c <config_output_file>

The user I am referring to is the new_roster_user in this example.

As far as that exact error, the saga of that bug is detailed here: http://code.google.com/p/roster-dns-management/issues/detail?id=228

Basically you are using a very specific version of Python 2.7 and it broke the API. They fixed it in later versions of 2.7. There are a few different solutions to fixing it in the bug.

-stephen


--
 
 
 

Peter Silva

unread,
Jan 27, 2013, 8:43:26 PM1/27/13
to roster-d...@googlegroups.com, shar...@purdue.edu
ok... 
root@wpdeb:/etc/roster# roster_database_bootstrap -U root --force
Config file /etc/roster/roster_server.conf exists, use it? (Y/n): 
Please enter response as either "yes" or "no"
Config file /etc/roster/roster_server.conf exists, use it? (Y/n): Y
root@wpdeb:/etc/roster#

oot@wpdeb:/etc/roster# dnsmkdnsserver dns_server -d trestler 
Password for root: ----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 60444)
Traceback (most recent call last):
  File "/usr/lib/python2.7/SocketServer.py", line 594, in process_request_thread
    self.shutdown_request(request)
  Fil

same as before...

The version of python being used is the one that comes with Debian wheezy (the one that will be the next stable version.)
It is 2.7.3... can you point me to documentation about the solutions, or recommend one?

Stephen Lien Harrell

unread,
Jan 27, 2013, 9:06:24 PM1/27/13
to roster-d...@googlegroups.com
There is a solution in the bug report I posted. It isn't a good solution quite honestly.


It looks like there may be some more information on the bug and I will try and get someone to work on this for release 18. Hopefully it will be out in the next month.

-stephen


--
 
 
 

Peter Silva

unread,
Jan 27, 2013, 9:13:42 PM1/27/13
to roster-d...@googlegroups.com
ok, that does look ugly... I suppose I can wait... thanks for the help so far.


--
 
 
 

Reply all
Reply to author
Forward
0 new messages