aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2016-11-13 22:35:10 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2016-11-13 22:35:10 +0100
commit67fd2f2858ac63d46f42ef3c096b007ac7362849 (patch)
tree6ddad3566873d9874434cd5ad4a7e3eb9b251b8d
parent9655f95d0f501b03b33c7896b7b0c23d090aff81 (diff)
downloadbusybox-w32-67fd2f2858ac63d46f42ef3c096b007ac7362849.tar.gz
busybox-w32-67fd2f2858ac63d46f42ef3c096b007ac7362849.tar.bz2
busybox-w32-67fd2f2858ac63d46f42ef3c096b007ac7362849.zip
dnsdomainname: split it from "hostname", make it independently selectable
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--include/applets.src.h2
-rw-r--r--networking/Config.src6
-rw-r--r--networking/Kbuild.src1
-rw-r--r--networking/hostname.c26
4 files changed, 24 insertions, 11 deletions
diff --git a/include/applets.src.h b/include/applets.src.h
index 248d539c4..dbc45953c 100644
--- a/include/applets.src.h
+++ b/include/applets.src.h
@@ -112,7 +112,6 @@ IF_DHCPRELAY(APPLET(dhcprelay, BB_DIR_USR_SBIN, BB_SUID_DROP))
112IF_DIRNAME(APPLET_NOFORK(dirname, dirname, BB_DIR_USR_BIN, BB_SUID_DROP, dirname)) 112IF_DIRNAME(APPLET_NOFORK(dirname, dirname, BB_DIR_USR_BIN, BB_SUID_DROP, dirname))
113IF_DMESG(APPLET(dmesg, BB_DIR_BIN, BB_SUID_DROP)) 113IF_DMESG(APPLET(dmesg, BB_DIR_BIN, BB_SUID_DROP))
114IF_DNSD(APPLET(dnsd, BB_DIR_USR_SBIN, BB_SUID_DROP)) 114IF_DNSD(APPLET(dnsd, BB_DIR_USR_SBIN, BB_SUID_DROP))
115IF_HOSTNAME(APPLET_ODDNAME(dnsdomainname, hostname, BB_DIR_BIN, BB_SUID_DROP, dnsdomainname))
116IF_DOS2UNIX(APPLET_NOEXEC(dos2unix, dos2unix, BB_DIR_USR_BIN, BB_SUID_DROP, dos2unix)) 115IF_DOS2UNIX(APPLET_NOEXEC(dos2unix, dos2unix, BB_DIR_USR_BIN, BB_SUID_DROP, dos2unix))
117IF_DU(APPLET(du, BB_DIR_USR_BIN, BB_SUID_DROP)) 116IF_DU(APPLET(du, BB_DIR_USR_BIN, BB_SUID_DROP))
118IF_DUMPKMAP(APPLET(dumpkmap, BB_DIR_BIN, BB_SUID_DROP)) 117IF_DUMPKMAP(APPLET(dumpkmap, BB_DIR_BIN, BB_SUID_DROP))
@@ -158,7 +157,6 @@ IF_HD(APPLET_NOEXEC(hd, hexdump, BB_DIR_USR_BIN, BB_SUID_DROP, hd))
158IF_HDPARM(APPLET(hdparm, BB_DIR_SBIN, BB_SUID_DROP)) 157IF_HDPARM(APPLET(hdparm, BB_DIR_SBIN, BB_SUID_DROP))
159IF_HEAD(APPLET_NOEXEC(head, head, BB_DIR_USR_BIN, BB_SUID_DROP, head)) 158IF_HEAD(APPLET_NOEXEC(head, head, BB_DIR_USR_BIN, BB_SUID_DROP, head))
160IF_HEXDUMP(APPLET_NOEXEC(hexdump, hexdump, BB_DIR_USR_BIN, BB_SUID_DROP, hexdump)) 159IF_HEXDUMP(APPLET_NOEXEC(hexdump, hexdump, BB_DIR_USR_BIN, BB_SUID_DROP, hexdump))
161IF_HOSTNAME(APPLET(hostname, BB_DIR_BIN, BB_SUID_DROP))
162IF_HTTPD(APPLET(httpd, BB_DIR_USR_SBIN, BB_SUID_DROP)) 160IF_HTTPD(APPLET(httpd, BB_DIR_USR_SBIN, BB_SUID_DROP))
163IF_HWCLOCK(APPLET(hwclock, BB_DIR_SBIN, BB_SUID_DROP)) 161IF_HWCLOCK(APPLET(hwclock, BB_DIR_SBIN, BB_SUID_DROP))
164IF_IFCONFIG(APPLET(ifconfig, BB_DIR_SBIN, BB_SUID_DROP)) 162IF_IFCONFIG(APPLET(ifconfig, BB_DIR_SBIN, BB_SUID_DROP))
diff --git a/networking/Config.src b/networking/Config.src
index eb0536a7c..398a5ee25 100644
--- a/networking/Config.src
+++ b/networking/Config.src
@@ -160,12 +160,6 @@ config FEATURE_FTPGETPUT_LONG_OPTIONS
160 help 160 help
161 Support long options for the ftpget/ftpput applet. 161 Support long options for the ftpget/ftpput applet.
162 162
163config HOSTNAME
164 bool "hostname"
165 default y
166 help
167 Show or set the system's host name.
168
169config HTTPD 163config HTTPD
170 bool "httpd" 164 bool "httpd"
171 default y 165 default y
diff --git a/networking/Kbuild.src b/networking/Kbuild.src
index 79f54824b..e14070647 100644
--- a/networking/Kbuild.src
+++ b/networking/Kbuild.src
@@ -16,7 +16,6 @@ lib-$(CONFIG_FAKEIDENTD) += isrv_identd.o isrv.o
16lib-$(CONFIG_FTPD) += ftpd.o 16lib-$(CONFIG_FTPD) += ftpd.o
17lib-$(CONFIG_FTPGET) += ftpgetput.o 17lib-$(CONFIG_FTPGET) += ftpgetput.o
18lib-$(CONFIG_FTPPUT) += ftpgetput.o 18lib-$(CONFIG_FTPPUT) += ftpgetput.o
19lib-$(CONFIG_HOSTNAME) += hostname.o
20lib-$(CONFIG_HTTPD) += httpd.o 19lib-$(CONFIG_HTTPD) += httpd.o
21lib-$(CONFIG_IFCONFIG) += ifconfig.o interface.o 20lib-$(CONFIG_IFCONFIG) += ifconfig.o interface.o
22lib-$(CONFIG_IFENSLAVE) += ifenslave.o interface.o 21lib-$(CONFIG_IFENSLAVE) += ifenslave.o interface.o
diff --git a/networking/hostname.c b/networking/hostname.c
index b3e352242..04a051ede 100644
--- a/networking/hostname.c
+++ b/networking/hostname.c
@@ -10,6 +10,24 @@
10 * Licensed under GPLv2 or later, see file LICENSE in this source tree. 10 * Licensed under GPLv2 or later, see file LICENSE in this source tree.
11 */ 11 */
12 12
13//config:config HOSTNAME
14//config: bool "hostname"
15//config: default y
16//config: help
17//config: Show or set the system's host name.
18//config:
19//config:config DNSDOMAINNAME
20//config: bool "dnsdomainname"
21//config: default y
22//config: help
23//config: Alias to "hostname -d".
24
25//applet:IF_DNSDOMAINNAME(APPLET_ODDNAME(dnsdomainname, hostname, BB_DIR_BIN, BB_SUID_DROP, dnsdomainname))
26//applet:IF_HOSTNAME(APPLET(hostname, BB_DIR_BIN, BB_SUID_DROP))
27
28//kbuild: lib-$(CONFIG_HOSTNAME) += hostname.o
29//kbuild: lib-$(CONFIG_DNSDOMAINNAME) += hostname.o
30
13//usage:#define hostname_trivial_usage 31//usage:#define hostname_trivial_usage
14//usage: "[OPTIONS] [HOSTNAME | -F FILE]" 32//usage: "[OPTIONS] [HOSTNAME | -F FILE]"
15//usage:#define hostname_full_usage "\n\n" 33//usage:#define hostname_full_usage "\n\n"
@@ -131,8 +149,12 @@ int hostname_main(int argc UNUSED_PARAM, char **argv)
131 opts = getopt32(argv, "dfisF:v", &hostname_str); 149 opts = getopt32(argv, "dfisF:v", &hostname_str);
132 argv += optind; 150 argv += optind;
133 buf = safe_gethostname(); 151 buf = safe_gethostname();
134 if (applet_name[0] == 'd') /* dnsdomainname? */ 152 if (ENABLE_DNSDOMAINNAME) {
135 opts = OPT_d; 153 if (!ENABLE_HOSTNAME || applet_name[0] == 'd') {
154 /* dnsdomainname */
155 opts = OPT_d;
156 }
157 }
136 158
137 if (opts & OPT_dfi) { 159 if (opts & OPT_dfi) {
138 /* Cases when we need full hostname (or its part) */ 160 /* Cases when we need full hostname (or its part) */