clx authorization and localhost

Raymond Toy toy.raymond at gmail.com
Mon Jan 11 03:53:57 CET 2010


I upgraded my openSuSE 10.3 system to 11.2 this past week, and now clx
no longer works.  I suppose it could be my setup but it seems clx should
work a little better than this.

What is happening is (open-clx-display) tries to get the best
authorization.  The host name, as returned by xlib::get-host-name is
"lorien2".  Get-best-authorization looks at my xauth file which just
contains the entry for localhost/unix:0 MIT-MAGIC-COOKIE.  This fails
because of the clause:

               (when (and (eql family protocol)
                          (equal host-address address)
                          (= number display)
                          (let ((pos1 (position name *known-authorizations*
                                                :test #'string=)))
                            (and pos1
                                 (or (null best-pos)
                                     (< pos1 best-pos)))))
                 (setf best-name name
                       best-pos (position name *known-authorizations*
                                          :test #'string=)
                       best-data data))))


Here, host-address is "lorien2" and address is "localhost", and they're
not EQUAL.

Shouldn't there be something else here?  Say if the protocal is :local,
then check if address is "localhost"?

(The xauth entry was not created by me.  I think the X server did that
automatically.)

Ray




More information about the cmucl-imp mailing list