Code Monkey home page Code Monkey logo

Comments (5)

nikias avatar nikias commented on May 28, 2024

@borisovg Since I'm not getting this error it would be very helpful if you had libimobiledevice installed compiled with debug info so we can see where the violating call to plist_new_string() comes from.

from libplist.

borisovg avatar borisovg commented on May 28, 2024

Here is the backtrace:

Program received signal SIGSEGV, Segmentation fault.
strlen () at ../sysdeps/x86_64/strlen.S:106
106     ../sysdeps/x86_64/strlen.S: No such file or directory.
(gdb) bt full
#0  strlen () at ../sysdeps/x86_64/strlen.S:106
No locals.
#1  0x00007ffff69d3b5e in __GI___strdup (s=0x0) at strdup.c:41
        len = <optimized out>
        new = <optimized out>
#2  0x00007ffff7778c4b in plist_new_string (val=0x0) at plist.c:118
        data = 0x606ba0
#3  0x00007ffff798a03a in pair_record_generate (client=0x607130, pair_record=0x7fffffffe1d8) at lockdown.c:747
        ret = 0
        public_key = {
          data = 0x60b630 "-----BEGIN RSA PUBLIC KEY-----\nMIGJAoGBANttJvV8Tag/[... snipped due to paranoia ...]\n7+0VdKAjQz9WJQp4dmbem3bm1vR4PmB8vNL0yZl"..., size = 251}
        host_id = 0x0
        system_buid = 0x0
        uret = 0
#4  0x00007ffff798a19b in lockdownd_do_pair (client=0x607130, pair_record=0x0, verb=0x7ffff7999748 "Pair") at lockdown.c:804
        ret = -256
        dict = 0x0
        pair_record_plist = 0x60c5d0
        wifi_node = 0x0
        pairing_mode = 0
        request_pair_record = 0x7ffff6cf5640 <main_arena+32>
        options = 0x60b3a0
#5  0x00007ffff798a699 in lockdownd_pair (client=0x607130, pair_record=0x0) at lockdown.c:956
No locals.
#6  0x00007ffff7989d69 in lockdownd_client_new_with_handshake (device=0x607190, client=0x604b30 <control>, label=0x40379c "ifuse") at lockdown.c:640
        ret = -16
        client_loc = 0x607130
        host_id = 0x0
        type = 0x608b20 ""
        pair_record = 0x0
#7  0x0000000000402ee2 in main (argc=2, argv=0x7fffffffe468) at ifuse.c:754
        res = 1
        args = {argc = 2, argv = 0x606af0, allocated = 1}
        mst = {st_dev = 65024, st_ino = 655488, st_nlink = 2, st_mode = 16877, st_uid = 1000, st_gid = 1000, __pad0 = 0, st_rdev = 0, st_size = 4096, st_blksize = 4096, st_blocks = 8, 
          st_atim = {tv_sec = 1357837666, tv_nsec = 180116579}, st_mtim = {tv_sec = 1345467094, tv_nsec = 0}, st_ctim = {tv_sec = 1345634544, tv_nsec = 61450939}, __glibc_reserved = {
            0, 0, 0}}
        ret = 0

I compiled libplist, libimobiledevice and ifuse using:

make clean
CFLAGS='-ggdb -O0' CXXFLAGS='-ggdb -O0' ./configure
make

Let me know if this was not the right way to do it.

from libplist.

nikias avatar nikias commented on May 28, 2024

Thanks, that helped! I pushed a fix to git master. However, the behavior is weird since apparently ifuse tries to trigger a device pair which should be handled by usbmuxd now. Do you have the latest version of usbmuxd installed?

from libplist.

borisovg avatar borisovg commented on May 28, 2024

I have that installed from Debian packages:

ii  libusbmuxd-dev:amd64                  1.0.9-1
ii  libusbmuxd2:amd64                     1.0.9-1
ii  usbmuxd                               1.0.8-5

It is somewhat strange that the usbmuxd package is of a different version, but looking at the upstream git repo that appears to be correct.

from libplist.

borisovg avatar borisovg commented on May 28, 2024

P.S. Fixed appears to have worked - no more crash. :-)

Thanks!

from libplist.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.