← Commit list

87e216294

Andrey Mazo
Andrey Mazo
2019-02-27
SUCCESS Duration: 150s

Subject

udhcpc: don't exit after backgrounding on -n -b

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

networking/udhcp/d6_dhcpc.c+7 -1
@@ -1370,7 +1370,13 @@ int udhcpc6_main(int argc UNUSED_PARAM, char **argv)
bb_error_msg("no lease, forking to background");
client_background();
/* do not background again! */
- opt = ((opt & ~OPT_b) | OPT_f);
+ opt = ((opt & ~(OPT_b|OPT_n)) | OPT_f);
+ /* ^^^ also disables -n (-b takes priority over -n):
+ * ifup's default udhcpc options are -R -n,
+ * and users want to be able to add -b
+ * (in a config file) to make it background
+ * _and not exit_.
+ */
} else
#endif
if (opt & OPT_n) { /* abort if no lease */
networking/udhcp/dhcpc.c+7 -1
@@ -1484,7 +1484,13 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
bb_error_msg("no lease, forking to background");
client_background();
/* do not background again! */
- opt = ((opt & ~OPT_b) | OPT_f);
+ opt = ((opt & ~(OPT_b|OPT_n)) | OPT_f);
+ /* ^^^ also disables -n (-b takes priority over -n):
+ * ifup's default udhcpc options are -R -n,
+ * and users want to be able to add -b
+ * (in a config file) to make it background
+ * _and not exit_.
+ */
} else
#endif
if (opt & OPT_n) { /* abort if no lease */