ConsoleKit signatures in HAL

Frederic Crozat fcrozat at mandriva.com
Tue Aug 12 10:16:11 PDT 2008


Le lundi 11 août 2008 à 15:40 +0200, Frederic Crozat a écrit :
> Le lundi 11 août 2008 à 13:36 +0200, Frederic Crozat a écrit :
> > Le dimanche 10 août 2008 à 16:43 +0200, Danny Kukawka a écrit :
> > > On Dienstag, 29. Juli 2008, Ben Gamari (FOSS) wrote:
> > > > Recently I noticed that HAL (running from git, along with PolicyKit and
> > > > ConsoleKit) was no longer recognizing ConsoleKit sessions. Further
> > > > investigation showed that the signatures (in particular, return values)
> > > > of several ConsoleKit methods and signals used by HAL were incorrect.
> > > > The attached patch corrects this. I have tested it and HAL now grants me
> > > > privileges as expected. Thanks,
> > > 
> > > Since hal has no dependency to the latest CK release (this change was 
> > > introduced with v0.3.0 into CK) I would like to add a configure check for the 
> > > CK version and ifdef'ing the code to allow running hal also with older CK 
> > > versions.
> > > 
> > > See attached patch for the configure check (which leads to HAVE_CK_0_3). Could 
> > > you please update your patch?
> > 
> > Since I needed both patches, I've taken the liberty to merge them, with
> > your comments as well.
> 
> Hmm, before committing this, could somebody else than me test upgrading
> to CK 0.3.0 still works with hal 0.5.11 + this patch and Policykit 0.9 +
> additional patch for CK 0.3 API (grabbed from Fedora) ? 
> 
> I'm testing ATM and mount is refused :
> 
> using action org.freedesktop.hal.storage.mount-removable for uid 500,
> system_bus_connection :1.58
> 15:27:31.563 [E] access-check.c:185: ck_session_objpath is not NULL, but
> CKTracker don't know about the session!
> [WARN 16458] The passed result code, -1, is not valid
> pid 16647: rc=1 signaled=0: /usr/lib/hal-storage-mount
> 15:27:31.570 [I] device.c:1894: Removing locks from ':1.59'
> 15:27:31.570 [I] hald_dbus.c:4042: No more methods in queue
> 15:27:31.571 [I] hald_dbus.c:4105: failed with
> 'org.freedesktop.Hal.Device.Volume.UnknownFailure' 'IsCallerPrivileged()
> failed'

Ok, found the problem, there was a typo in the #ifdef part of my patch
and I wasn't seeing it. I discovered it when checking fedora patch on
hal for CK 0.3 compatibility (too bad they didn't bother sending it
upstream :(

Here is the fixed patch.

-- 
Frederic Crozat <fcrozat at mandriva.com>
Mandriva
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hal-0.5.11-ck03.patch
Type: text/x-patch
Size: 3228 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/hal/attachments/20080812/078ecb9b/attachment.bin 


More information about the hal mailing list