aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2016-12-23 02:42:26 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2016-12-23 02:42:26 +0100
commit9cc3d3ab21eb8b4766b71dffb04132184c754f7b (patch)
tree11ebefbc2a008c9479110177d97c346893ba4d82
parent7c5dea399b16341ead146cb86eb4f6cde031a12d (diff)
downloadbusybox-9cc3d3ab21eb8b4766b71dffb04132184c754f7b.tar.gz
fix breakage found by mass one-applet builds
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--archival/bbunzip.c4
-rw-r--r--libbb/Kbuild.src1
-rw-r--r--libbb/appletlib.c32
-rw-r--r--libbb/update_passwd.c2
-rw-r--r--networking/libiproute/Kbuild.src3
-rw-r--r--networking/udhcp/Config.src2
-rw-r--r--networking/udhcp/Kbuild.src2
-rw-r--r--sysklogd/logread.c3
8 files changed, 29 insertions, 20 deletions
diff --git a/archival/bbunzip.c b/archival/bbunzip.c
index d5db4627f..60a837e22 100644
--- a/archival/bbunzip.c
+++ b/archival/bbunzip.c
@@ -9,8 +9,12 @@
/* lzop_main() uses bbunpack(), need this: */
//kbuild:lib-$(CONFIG_LZOP) += bbunzip.o
+//kbuild:lib-$(CONFIG_LZOPCAT) += bbunzip.o
+//kbuild:lib-$(CONFIG_UNLZOP) += bbunzip.o
/* bzip2_main() too: */
//kbuild:lib-$(CONFIG_BZIP2) += bbunzip.o
+/* gzip_main() too: */
+//kbuild:lib-$(CONFIG_GZIP) += bbunzip.o
/* Note: must be kept in sync with archival/lzop.c */
enum {
diff --git a/libbb/Kbuild.src b/libbb/Kbuild.src
index e426f3c7e..898a51a89 100644
--- a/libbb/Kbuild.src
+++ b/libbb/Kbuild.src
@@ -176,6 +176,7 @@ lib-$(CONFIG_TRACEROUTE6) += inet_cksum.o
lib-$(CONFIG_UDHCPC) += inet_cksum.o
lib-$(CONFIG_UDHCPC6) += inet_cksum.o
lib-$(CONFIG_UDHCPD) += inet_cksum.o
+lib-$(CONFIG_DHCPRELAY) += inet_cksum.o
# We shouldn't build xregcomp.c if we don't need it - this ensures we don't
# require regex.h to be in the include dir even if we don't need it thereby
diff --git a/libbb/appletlib.c b/libbb/appletlib.c
index 9425c7bd4..ee8b4ec14 100644
--- a/libbb/appletlib.c
+++ b/libbb/appletlib.c
@@ -329,21 +329,6 @@ static struct suid_config_t {
static bool suid_cfg_readable;
-/* check if u is member of group g */
-static int ingroup(uid_t u, gid_t g)
-{
- struct group *grp = getgrgid(g);
- if (grp) {
- char **mem;
- for (mem = grp->gr_mem; *mem; mem++) {
- struct passwd *pwd = getpwnam(*mem);
- if (pwd && (pwd->pw_uid == u))
- return 1;
- }
- }
- return 0;
-}
-
/* libbb candidate */
static char *get_trimmed_slice(char *s, char *e)
{
@@ -568,7 +553,22 @@ static inline void parse_config_file(void)
# endif /* FEATURE_SUID_CONFIG */
-# if ENABLE_FEATURE_SUID
+# if ENABLE_FEATURE_SUID && NUM_APPLETS > 0
+/* check if u is member of group g */
+static int ingroup(uid_t u, gid_t g)
+{
+ struct group *grp = getgrgid(g);
+ if (grp) {
+ char **mem;
+ for (mem = grp->gr_mem; *mem; mem++) {
+ struct passwd *pwd = getpwnam(*mem);
+ if (pwd && (pwd->pw_uid == u))
+ return 1;
+ }
+ }
+ return 0;
+}
+
static void check_suid(int applet_no)
{
gid_t rgid; /* real gid */
diff --git a/libbb/update_passwd.c b/libbb/update_passwd.c
index 6255af492..95423d19b 100644
--- a/libbb/update_passwd.c
+++ b/libbb/update_passwd.c
@@ -180,6 +180,7 @@ int FAST_FUNC update_passwd(const char *filename,
if (!line) /* EOF/error */
break;
+#if ENABLE_FEATURE_ADDUSER_TO_GROUP || ENABLE_FEATURE_DEL_USER_FROM_GROUP
if (!name && member) {
/* Delete member from all groups */
/* line is "GROUP:PASSWD:[member1[,member2]...]" */
@@ -209,6 +210,7 @@ int FAST_FUNC update_passwd(const char *filename,
fprintf(new_fp, "%s\n", line);
goto next;
}
+#endif
cp = is_prefixed_with(line, name_colon);
if (!cp) {
diff --git a/networking/libiproute/Kbuild.src b/networking/libiproute/Kbuild.src
index c20e2fee8..056a58540 100644
--- a/networking/libiproute/Kbuild.src
+++ b/networking/libiproute/Kbuild.src
@@ -62,13 +62,16 @@ lib-$(CONFIG_FEATURE_IP_TUNNEL) += \
lib-$(CONFIG_FEATURE_IP_RULE) += \
ip_parse_common_args.o \
iprule.o \
+ libnetlink.o \
rt_names.o \
+ rtm_map.o \
utils.o
lib-$(CONFIG_FEATURE_IP_NEIGH) += \
ip_parse_common_args.o \
ipneigh.o \
libnetlink.o \
+ ll_addr.o \
ll_map.o \
rt_names.o \
utils.o
diff --git a/networking/udhcp/Config.src b/networking/udhcp/Config.src
index c34c8d6f0..90fb313b5 100644
--- a/networking/udhcp/Config.src
+++ b/networking/udhcp/Config.src
@@ -16,7 +16,6 @@ config UDHCPD
config DHCPRELAY
bool "dhcprelay"
default y
- depends on UDHCPD
help
dhcprelay listens for dhcp requests on one or more interfaces
and forwards these requests to a different interface or dhcp
@@ -25,7 +24,6 @@ config DHCPRELAY
config DUMPLEASES
bool "Lease display utility (dumpleases)"
default y
- depends on UDHCPD
help
dumpleases displays the leases written out by the udhcpd server.
Lease times are stored in the file by time remaining in lease, or
diff --git a/networking/udhcp/Kbuild.src b/networking/udhcp/Kbuild.src
index 5ea77df06..fcb725fbc 100644
--- a/networking/udhcp/Kbuild.src
+++ b/networking/udhcp/Kbuild.src
@@ -15,7 +15,7 @@ lib-$(CONFIG_UDHCPD) += common.o packet.o signalpipe.o socket.o
lib-$(CONFIG_UDHCPC) += dhcpc.o
lib-$(CONFIG_UDHCPD) += dhcpd.o arpping.o
lib-$(CONFIG_DUMPLEASES) += dumpleases.o
-lib-$(CONFIG_DHCPRELAY) += dhcprelay.o
+lib-$(CONFIG_DHCPRELAY) += dhcprelay.o common.o socket.o packet.o
lib-$(CONFIG_FEATURE_UDHCPC_ARPING) += arpping.o
lib-$(CONFIG_FEATURE_UDHCP_RFC3397) += domain_codec.o
diff --git a/sysklogd/logread.c b/sysklogd/logread.c
index 5b999730a..1f0c6252d 100644
--- a/sysklogd/logread.c
+++ b/sysklogd/logread.c
@@ -11,7 +11,8 @@
//config:config LOGREAD
//config: bool "logread"
//config: default y
-//config: depends on FEATURE_IPC_SYSLOG
+//WRONG: it should be compilable without SYSLOG=y:
+//WRONG: depends on FEATURE_IPC_SYSLOG
//config: help
//config: If you enabled Circular Buffer support, you almost
//config: certainly want to enable this feature as well. This