Thanks Brian, this was really helpful! This stack trace pinpoints the particular strncpy() call in do_interface:
if (current_state != NULL) { strncpy(liface, current_state, 80); liface is correct ("lo"), but current_state is bogus (0x1). We see that lock_interface() failed as lock == NULL, but lock isn't being tested after calling lock_interface(). Hence "current_state" never actually gets initialized. The obvious exit path in lock_interface() is if (lock_fp == NULL) { if (!no_act) { fprintf(stderr, "%s: failed to open lockfile %s: %s\n", argv0, filename, strerror(errno)); exit(1); } else { return NULL; } } i. e. this happens if the interface is locked. For the record, I set bug 1337873 to failed, which is the SRU tracking bug for landing the per-interface locking into stables. -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to ifupdown in Ubuntu. https://bugs.launchpad.net/bugs/1532722 Title: /sbin/ifup:11:__GI_strncpy:strncpy:do_interface:main Status in ifupdown package in Ubuntu: New Bug description: The Ubuntu Error Tracker has been receiving reports about a problem regarding ifupdown. This problem was most recently seen with version 0.8.6ubuntu1, the problem page at https://errors.ubuntu.com/problem/6c970a32e2d96151cb8f99d98a460a42e697e6f2 contains more details. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/ifupdown/+bug/1532722/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp