summaryrefslogtreecommitdiff
path: root/runit/chpst.c
AgeCommit message (Collapse)Author
2017-03-13runit: fix chpst -n -N -u USERDenys Vlasenko
busybox's chpst first switches user/group and then tries to call nice(). Once the root priviledges are dropped, process priority can only be lowered. So negative nice values don't work anymore. Upstream version of chpst correctly calls nice() before switching user. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-01-29*: add comment about APPLET_ODDNAME formatDenys Vlasenko
It confused me more than once Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2016-07-06getopt32: add new syntax of 'o:+' and 'o:*' for -o NUM and -o LISTDenys Vlasenko
In many cases, this aqllows to drop use of opt_complementary. Approximately -400 bytes: function old new delta getopt32 1423 1502 +79 opt_string 17 18 +1 OPT_STR 24 25 +1 uniq_main 416 406 -10 timeout_main 279 269 -10 sulogin_main 270 260 -10 readprofile_main 1825 1815 -10 ps_main 543 533 -10 pidof_main 245 235 -10 pgrep_main 611 601 -10 od_main 2600 2590 -10 mkfs_minix_main 2684 2674 -10 mkfs_ext2_main 2603 2593 -10 microcom_main 712 702 -10 makemime_main 315 305 -10 ionice_main 282 272 -10 inetd_main 2074 2064 -10 ifplugd_main 1144 1134 -10 halt_main 353 343 -10 getopt_main 636 626 -10 fdisk_main 2854 2844 -10 env_main 206 196 -10 dmesg_main 319 309 -10 conspy_main 1214 1204 -10 awk_main 981 971 -10 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/22 up/down: 81/-220) Total: -139 bytes text data bss dec hex filename 919373 906 14060 934339 e41c3 busybox_old 918969 906 14060 933935 e402f busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2016-04-01libbb: two new functions: wait_for_exitstatus(pid), xfchdir(fd)Denys Vlasenko
Bartosz Golaszewski proposed xfchdir() Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-10-19runit/*: convert to new-style "one file" appletsDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-11-29chpst: fix a bug where -U USER was using wrong USER (one from -u USER)Denys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-07-05include sys/resource.h where neededMike Frysinger
We use functions from sys/resource.h in misc applets, but don't include the header. This breaks building with newer glibc versions, so add the include where needed. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-03-08libbb: make xchroot do a chdir("/") after chrootDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-09-16chpst: move misplaced commentDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-09-16chpst: simple code shrinkDenys Vlasenko
function old new delta chpst_main 733 718 -15 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-06-05*: remove "Options:" string from help textsDenys Vlasenko
function old new delta packed_usage 28706 28623 -83 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-04-11move remaining help text from include/usage.src.hPere Orga
Signed-off-by: Pere Orga <gotrunks@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-28*: whitespace fixesDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-09-05runit_lib: remove/inline a few more thingsDenys Vlasenko
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-07-04libbb: introduce and use BB_EXECVP_or_die()Pascal Bellard
function old new delta BB_EXECVP_or_die - 47 +47 time_main 1042 1043 +1 chrt_main 371 364 -7 ionice_main 292 282 -10 setsid_main 69 56 -13 nohup_main 236 223 -13 cttyhack_main 266 253 -13 chroot_main 94 81 -13 chpst_main 746 733 -13 timeout_main 297 279 -18 taskset_main 541 522 -19 vfork_child 67 45 -22 parse 975 953 -22 lpd_main 770 748 -22 launch_helper 192 170 -22 tcpudpsvd_main 1810 1782 -28 nice_main 190 156 -34 env_main 242 206 -36 run_command 221 174 -47 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/17 up/down: 48/-352) Total: -304 bytes Signed-off-by: Pascal Bellard <pascal.bellard@ads-lu.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-06-25*: make exec failure message more consistentDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-06hwclock: fix sizeof bug (used it on pointer, not array); make --systohc exactDenys Vlasenko
function old new delta hwclock_main 329 428 +99 rtc_adjtime_is_utc 138 134 -4 edir 365 354 -11 read_rtc 39 23 -16 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/3 up/down: 99/-31) Total: 68 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-27chpst: tiny shrinkage and add possible TODOBernhard Reutner-Fischer
text data bss dec hex filename 1398 0 0 1398 576 runit/chpst.o.old 1385 0 0 1385 569 runit/chpst.o Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-08*: a few more NOINLINEsDenys Vlasenko
function old new delta print_linkinfo - 815 +815 do_msg - 783 +783 INET_setroute - 757 +757 varvalue - 746 +746 do_sem - 637 +637 inflate_codes - 617 +617 INET6_setroute - 491 +491 edir - 370 +370 sync_cursor - 298 +298 update_utmp - 246 +246 searchLines - 165 +165 setup_alarm - 144 +144 may_wakeup - 101 +101 getNum 566 371 -195 refresh 1166 848 -318 rtcwake_main 809 479 -330 getty_main 2396 1921 -475 chpst_main 1373 746 -627 inflate_unzip_internal 1335 567 -768 evalvar 1384 612 -772 ipaddr_list_or_flush 2160 1246 -914 route_main 1585 245 -1340 ipcs_main 2523 1049 -1474 ------------------------------------------------------------------------------ (add/remove: 13/0 grow/shrink: 0/10 up/down: 6170/-7213) Total: -1043 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-04-21*: mass renaming of USE_XXXX to IF_XXXXDenis Vlasenko
and SKIP_XXXX to IF_NOT_XXXX - the second one was especially badly named. It was not skipping anything!
2008-08-20envdir: fix "envdir with no params" caseDenis Vlasenko
2008-08-15chpst: fix "envdir dir" case (bug 4574).Denis Vlasenko
2008-08-05randomconfig fixesDenis Vlasenko
2008-07-30chpst: large code shrink by VladimirDenis Vlasenko
function old new delta chpst_main 1058 1357 +299 euidgid 56 - -56 suidgid 59 - -59 slimit 208 - -208 packed_usage 24638 24420 -218 edir 375 - -375 ------------------------------------------------------------------------------ (add/remove: 0/4 grow/shrink: 1/1 up/down: 299/-916) Total: -617 bytes
2008-07-21- first pass to unify/cleanup uid handling (-236b)Bernhard Reutner-Fischer
This needs further love, alot of love.. Tito?
2008-07-05*: rename ATTRIBUTE_XXX to just XXX.Denis Vlasenko
2008-04-01chpst: fix "env directory" parsing to not strip everythingDenis Vlasenko
after 1st whitespace. -6 bytes.
2008-03-17*: add -Wunused-parameter; fix resulting breakageDenis Vlasenko
function old new delta procps_scan 1265 1298 +33 aliascmd 278 283 +5 parse_file_cmd 116 120 +4 dname_enc 373 377 +4 setcmd 90 93 +3 execcmd 57 60 +3 count_lines 72 74 +2 process_command_subs 340 339 -1 test_main 409 407 -2 mknod_main 179 177 -2 handle_incoming_and_exit 2653 2651 -2 argstr 1312 1310 -2 shiftcmd 131 128 -3 exitcmd 46 43 -3 dotcmd 297 294 -3 breakcmd 86 83 -3 evalpipe 353 349 -4 evalcommand 1180 1176 -4 evalcmd 109 105 -4 send_tree 374 369 -5 mkfifo_main 82 77 -5 evalsubshell 152 147 -5 typecmd 75 69 -6 letcmd 61 55 -6 add_cmd 1190 1183 -7 main 891 883 -8 ash_main 1415 1407 -8 parse_stream 1377 1367 -10 alloc_procps_scan 55 - -55 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 7/21 up/down: 54/-148) Total: -94 bytes text data bss dec hex filename 797195 658 7428 805281 c49a1 busybox_old 797101 658 7428 805187 c4943 busybox_unstripped
2008-03-12inetd: make it NOMMU-capable and IPv6-friendly. Lots of renamesDenis Vlasenko
of variable/function names Total: -2474 bytes text data bss dec hex filename 802215 661 7452 810328 c5d58 busybox_old 800120 661 7428 808209 c5511 busybox_unstripped
2008-03-02actually add bb_qsort.cDenis Vlasenko
*: s/Denis/Denys/
2008-02-25lpd: spool mode added by VladimirDenis Vlasenko
lpr: more robust error reporting *: introduce and use xchroot libbb: full_read/write now will report partial data counts prior to error isdirectory.c: style fixes lpd_main 249 486 +237 xchroot - 29 +29 get_response_or_say_and_die 110 139 +29 full_write 52 60 +8 full_read 55 63 +8 static.newline 1 - -1 switch_root_main 404 400 -4 chpst_main 1089 1079 -10 getopt32 1370 1359 -11 chroot_main 115 101 -14 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 4/4 up/down: 311/-40) Total: 271 bytes text data bss dec hex filename 798472 728 7484 806684 c4f1c busybox_old 798775 728 7484 806987 c504b busybox_unstripped
2007-10-11add -fvisibility=hidden to CC flags, mark XXX_main functionsDenis Vlasenko
EXTERNALLY_VISIBLE. 5% size reduction of libbusybox.so
2007-10-05chpst: fix whitespace damageDenis Vlasenko
svlogd: fix bug (two different "line" variables); stop using data/bss function old new delta processorstop 419 432 +13 rotate 514 525 +11 buffer_pwrite 493 499 +6 sig_term_handler 68 70 +2 sig_hangup_handler 34 36 +2 sig_alarm_handler 34 36 +2 rmoldest 305 307 +2 processorstart 401 403 +2 logdir_close 188 190 +2 tmaxflag 1 - -1 rotateasap 1 - -1 repl 1 - -1 reopenasap 1 - -1 linecomplete 1 - -1 exitasap 1 - -1 wstat 4 - -4 verbose 9 5 -4 replace 4 - -4 nearest_rotate 4 - -4 linemax 4 - -4 linelen 4 - -4 line 4 - -4 fndir 4 - -4 fl_flag_0 4 - -4 fdwdir 4 - -4 dirn 4 - -4 dir 4 - -4 blocked_sigset 4 - -4 sig_child_handler 248 239 -9 logdirs_reopen 1263 1240 -23 buffer_pread 532 473 -59 svlogd_main 1466 1367 -99 ------------------------------------------------------------------------------ (add/remove: 0/18 grow/shrink: 9/5 up/down: 42/-248) Total: -206 bytes text data bss dec hex filename 770916 989 9496 781401 bec59 busybox_old 770768 980 9448 781196 beb8c busybox_unstripped
2007-10-05chpst: stop using data/bssDenis Vlasenko
function old new delta chpst_main 1066 1089 +23 set_user 4 - -4 root 4 - -4 nicelvl 4 - -4 limitt 4 - -4 limits 196 192 -4 limitr 4 - -4 limitp 4 - -4 limito 4 - -4 limitl 4 - -4 limitf 4 - -4 limitd 4 - -4 limitc 4 - -4 limita 4 - -4 env_user 4 - -4 env_dir 4 - -4 ------------------------------------------------------------------------------ (add/remove: 0/14 grow/shrink: 1/1 up/down: 23/-60) Total: -37 bytes text data bss dec hex filename 770892 1029 9520 781441 bec81 busybox_old 770916 989 9496 781401 bec59 busybox_unstripped
2007-08-18don't pass argc in getopt32, it's superfluousDenis Vlasenko
(add/remove: 0/0 grow/shrink: 12/131 up/down: 91/-727) Total: -636 bytes text data bss dec hex filename 773469 1058 11092 785619 bfcd3 busybox_old 772644 1058 11092 784794 bf99a busybox_unstripped
2007-05-26usage.c: remove reference to busybox.hDenis Vlasenko
*: s/include "busybox.h"/include "libbb.h"
2007-02-06EXEC_PREFER_APPLETS support by Gabriel L. Somlo <somlo@cmu.edu>Denis Vlasenko
2007-02-03suppress warnings about easch <applet>_main() havingDenis Vlasenko
no preceding prototype
2007-01-11Trailing whitespace removal over entire treeDenis Vlasenko
2006-12-28bb_xget[pw/gr]nam were horribly misnamed - fixed.Denis Vlasenko
uidgid_get -> get_uidgid, add additional param (numeric_ok). Make chown use it. chown: fix "chown user: ...." install: fix incorrect use of bb_xget[pw/gr]nam
2006-11-24tar: sanitize option handlingDenis Vlasenko
2006-11-16svlogd: new applet. +9k. Still too big, but it was 12k yesterday.Denis Vlasenko
2006-10-20chpst: add overlooked copyright statementDenis Vlasenko
2006-10-10fixes from Vladimir Dronnikov <dronnikov@gmail.ru>Denis Vlasenko
2006-10-08attempt to regularize atoi mess.Denis Vlasenko
2006-10-06dnsd fix; option_mask32 added. dnsd needs more love.Denis Vlasenko
2006-10-06chpst: fix vda's silly mistakesDenis Vlasenko
Patch by Vladimir Dronnikov <dronnikov@gmail.ru>
2006-10-05httpd: add -u user[:grp] supportDenis Vlasenko
2006-10-03bb_applet_name -> applet_nameDenis Vlasenko
2006-10-03getopt_ulflags -> getopt32.Denis Vlasenko
It is impossible to formulate sane ABI based on size of ulong because it can be 32-bit or 64-bit. Basically it means that you cannot portably use more that 32 option chars in one call anyway... Make it explicit.