#17 ✓resolved
Nico Caprioli

Get rid of libiphone-initconf

Reported by Nico Caprioli | March 28th, 2009 @ 07:31 PM | in 1.0 Release

On libiphone is written libiphone-initconf don't have to be executed as root user but, as you know, only root user can execute "mount" so if you don't generate kays as root you can't mount your iphone

Comments and changes to this ticket

  • Andreas Nordal

    Andreas Nordal March 29th, 2009 @ 07:37 PM

    only root can mount

    Yes, mostly. Exceptions can be created, but of course the documentation should not assume that.

    According to the documentation, adding oneself to the "fuse" group is enough. On OpenSUSE 11.1, creating the fuse group and adding myself to it certainly didn't work.

    If the output of libiphone-initconf were stored in /usr/local/share/libiphone, we would not have this problem.

  • Nico Caprioli

    Nico Caprioli March 30th, 2009 @ 12:59 PM

    wes, but it is stored in YOUR home directory, so you have to run libiphone-initconf as root

  • Martin S.

    Martin S. March 30th, 2009 @ 02:37 PM

    One can mount using fusermount just fine without being root.

    The real problem is rather that libiphone has to check for the generated keys correctly. First in the user's home directory, then system-wide.

    Should be a rather trivial patch to fix this.

  • Matt Colyer

    Matt Colyer March 31st, 2009 @ 03:07 PM

    • Tag set to libiphone

    A patch along the lines of what Martin has outlined would be accepted.

  • Jonathan Beck

    Jonathan Beck April 1st, 2009 @ 10:18 AM

    • Milestone set to 1.0 Release
    • Assigned user set to “Jonathan Beck”
    • State changed from “new” to “open”
  • Paul Sladen

    Paul Sladen April 1st, 2009 @ 11:41 AM

    • Tag changed from libiphone to automount, ifuse, libiphone

    IMHO, this patch/proposal should be double-checked carefully.

    Keys do not need to exist for 'usbmuxd' (which is started as root, but only to create '/var/run/usbmuxd'). So it is possible to eg. SSH to the iPhone without keys.

    Keys are only needed to communicate at the lockdown level... which ideally is run per-user.

    eg. a gvfs or kioslave based AFC mounter has no need to do any actual "mounting" and can merely provide a userspace VFS translation.

  • Matt Colyer

    Matt Colyer April 1st, 2009 @ 04:15 PM

    A fair point Paul, once the usbmux stuff is implemented.

    I am not feeling a burning desire to work on this so I guess we could wait until that's implemented.

  • Jonathan Beck

    Jonathan Beck April 12th, 2009 @ 02:26 PM

    • Tag changed from automount, ifuse, libiphone to libiphone, libplist, merge
    • Assigned user changed from “Jonathan Beck” to “Matt Colyer”
    • Title changed from “libiphone-initconf need to be executed by root” to “Get rid of libiphone-initconf”

    title was : libiphone-initconf need to be executed by root

    I finally had time to find a proper solution. The idea is to generate root and host keys on the fly. This is made possible by using less secure random number generator in gnutls internals (libgcrypt).

    The patch implementing this is on top of my contact_sync branch. It also require libplist 0.10 since there was a bug preventing pairing.

    When this gets included, the libiphone-initconf tool won't exists anymore, and we get a ~5 sec overhead on the first connection (which imo is acceptable).

  • Matt Colyer

    Matt Colyer April 13th, 2009 @ 03:56 PM

    • State changed from “open” to “resolved”

    Merged in.

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.

New-ticket Create new ticket

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป

A project around supporting the iPhone in Linux.

See http://libimobiledevice.org

Referenced by