From vda.linux at googlemail.com Tue Mar 1 07:47:43 2022 From: vda.linux at googlemail.com (Denys Vlasenko) Date: Tue, 1 Mar 2022 08:47:43 +0100 Subject: [git commit] ash: don't read past end of var in subvareval for bash substitutions Message-ID: <20220301074009.A4BAF83831@busybox.osuosl.org> commit: https://git.busybox.net/busybox/commit/?id=fa52ac9781f479de8ab4d8526276244c0a0471f4 branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master Without this patch, BusyBox handles bash pattern substitutions without a terminating '/' character incorrectly. Consider the following shell script: _bootstrapver=5.0.211-r0 _referencesdir="/usr/${_bootstrapver/-*}/Sources" echo $_referencesdir This should output `/usr/5.0.211/Sources`. However, without this patch it instead outputs `/usr/5.0.211Sources`. This is due to the fact that BusyBox expects the bash pattern substitutions to always be terminated with a '/' (at least in this part of subvareval) and thus reads passed the substitution itself and consumes the '/' character which is part of the literal string. If there is no '/' after the substitution then BusyBox might perform an out-of-bounds read under certain circumstances. When replacing the bash pattern substitution with `${_bootstrapver/-*/}`, or with this patch applied, ash outputs the correct value. Signed-off-by: S??ren Tempel Signed-off-by: Denys Vlasenko --- shell/ash.c | 4 ++++ shell/ash_test/ash-vars/var_bash_repl_unterminated.right | 1 + shell/ash_test/ash-vars/var_bash_repl_unterminated.tests | 2 ++ shell/hush_test/hush-vars/var_bash_repl_unterminated.right | 1 + shell/hush_test/hush-vars/var_bash_repl_unterminated.tests | 2 ++ 5 files changed, 10 insertions(+) diff --git a/shell/ash.c b/shell/ash.c index adb0f223a..54335c5dd 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -7081,6 +7081,10 @@ subevalvar(char *start, char *str, int strloc, *repl = '\0'; break; } + if ((unsigned char)*repl == CTLENDVAR) { /* ${v/pattern} (no trailing /, no repl) */ + repl = NULL; + break; + } /* Handle escaped slashes, e.g. "${v/\//_}" (they are CTLESC'ed by this point) */ if ((unsigned char)*repl == CTLESC && repl[1]) repl++; diff --git a/shell/ash_test/ash-vars/var_bash_repl_unterminated.right b/shell/ash_test/ash-vars/var_bash_repl_unterminated.right new file mode 100644 index 000000000..5bff3a6fa --- /dev/null +++ b/shell/ash_test/ash-vars/var_bash_repl_unterminated.right @@ -0,0 +1 @@ +b/d diff --git a/shell/ash_test/ash-vars/var_bash_repl_unterminated.tests b/shell/ash_test/ash-vars/var_bash_repl_unterminated.tests new file mode 100755 index 000000000..c9513343d --- /dev/null +++ b/shell/ash_test/ash-vars/var_bash_repl_unterminated.tests @@ -0,0 +1,2 @@ +a=b-c +echo ${a/-*}/d diff --git a/shell/hush_test/hush-vars/var_bash_repl_unterminated.right b/shell/hush_test/hush-vars/var_bash_repl_unterminated.right new file mode 100644 index 000000000..5bff3a6fa --- /dev/null +++ b/shell/hush_test/hush-vars/var_bash_repl_unterminated.right @@ -0,0 +1 @@ +b/d diff --git a/shell/hush_test/hush-vars/var_bash_repl_unterminated.tests b/shell/hush_test/hush-vars/var_bash_repl_unterminated.tests new file mode 100755 index 000000000..c9513343d --- /dev/null +++ b/shell/hush_test/hush-vars/var_bash_repl_unterminated.tests @@ -0,0 +1,2 @@ +a=b-c +echo ${a/-*}/d From bugzilla at busybox.net Tue Mar 1 08:17:38 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Tue, 01 Mar 2022 08:17:38 +0000 Subject: [Bug 14571] ash crashes with fork (&) and stty -echo In-Reply-To: References: Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14571 --- Comment #1 from Denys Vlasenko --- Can't reproduce: does not crash for me. Tried on current git: v1.36.0.git -- You are receiving this mail because: You are on the CC list for the bug. From vda.linux at googlemail.com Tue Mar 1 08:56:54 2022 From: vda.linux at googlemail.com (Denys Vlasenko) Date: Tue, 1 Mar 2022 09:56:54 +0100 Subject: [git commit] ash: fix unsafe use of mempcpy Message-ID: <20220301084952.377608382D@busybox.osuosl.org> commit: https://git.busybox.net/busybox/commit/?id=7750b5a25a8cf9081b7c248687c876d0068e85bb branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master function old new delta subevalvar 1549 1557 +8 Signed-off-by: Denys Vlasenko --- shell/ash.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/shell/ash.c b/shell/ash.c index 54335c5dd..44ec2eafd 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -7191,7 +7191,13 @@ subevalvar(char *start, char *str, int strloc, len = orig_len - pos; if (!quotes) { - loc = mempcpy(startp, startp + pos, len); + /* want: loc = mempcpy(startp, startp + pos, len) + * but it does not allow overlapping arguments */ + loc = startp; + while (--len >= 0) { + *loc = loc[pos]; + loc++; + } } else { for (vstr = startp; pos != 0; pos--) { if ((unsigned char)*vstr == CTLESC) From vda.linux at googlemail.com Tue Mar 1 09:10:22 2022 From: vda.linux at googlemail.com (Denys Vlasenko) Date: Tue, 1 Mar 2022 10:10:22 +0100 Subject: [git commit] ash: do not truncate failed tilde expansion on unknown user names Message-ID: <20220301090234.AA84D810FE@busybox.osuosl.org> commit: https://git.busybox.net/busybox/commit/?id=5fe20cf3212fbada86fb75cf13064caed6a5f3a9 branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master Do not skip over "*p = c;" statement. Testcase: echo ~~nouser/qwe function old new delta argstr 1396 1406 +10 Signed-off-by: Denys Vlasenko --- shell/ash.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/shell/ash.c b/shell/ash.c index 44ec2eafd..ef4a47afe 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -6532,9 +6532,7 @@ exptilde(char *startp, int flag) home = lookupvar("HOME"); } else { pw = getpwnam(name); - if (pw == NULL) - goto lose; - home = pw->pw_dir; + home = pw ? pw->pw_dir : NULL; } *p = c; if (!home) From bugzilla at busybox.net Tue Mar 1 09:11:09 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Tue, 01 Mar 2022 09:11:09 +0000 Subject: [Bug 14306] ash: incorrect tilde expansion In-Reply-To: References: Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14306 --- Comment #1 from Denys Vlasenko --- Fixed in git. -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Tue Mar 1 09:31:25 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Tue, 01 Mar 2022 09:31:25 +0000 Subject: [Bug 14306] ash: incorrect tilde expansion In-Reply-To: References: Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14306 Denys Vlasenko changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are on the CC list for the bug. From vda.linux at googlemail.com Tue Mar 1 09:49:17 2022 From: vda.linux at googlemail.com (Denys Vlasenko) Date: Tue, 1 Mar 2022 10:49:17 +0100 Subject: [git commit] taskset: fix printf format mismatch in !FEATURE_TASKSET_FANCY config. closes 14616 Message-ID: <20220301094120.567438261A@busybox.osuosl.org> commit: https://git.busybox.net/busybox/commit/?id=55f969a006109703dd056bee1b6c1d11b0602449 branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master Signed-off-by: Denys Vlasenko --- util-linux/taskset.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/util-linux/taskset.c b/util-linux/taskset.c index d2ef9b98f..8b410f369 100644 --- a/util-linux/taskset.c +++ b/util-linux/taskset.c @@ -55,7 +55,6 @@ * Not yet implemented: * -a/--all-tasks (affect all threads) * needs to get TIDs from /proc/PID/task/ and use _them_ as "pid" in sched_setaffinity(pid) - * -c/--cpu-list (specify CPUs via "1,3,5-7") */ #include @@ -91,7 +90,7 @@ static char *from_mask(const ul *mask, unsigned sz_in_bytes) } #else #define TASKSET_PRINTF_MASK "%lx" -static unsigned long long from_mask(ul *mask, unsigned sz_in_bytes UNUSED_PARAM) +static unsigned long from_mask(ul *mask, unsigned sz_in_bytes UNUSED_PARAM) { return *mask; } From bugzilla at busybox.net Tue Mar 1 09:49:56 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Tue, 01 Mar 2022 09:49:56 +0000 Subject: [Bug 14616] Printf format code and data type do not match in taskset In-Reply-To: References: Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14616 Denys Vlasenko changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #1 from Denys Vlasenko --- Fixed in git, thank you. -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Tue Mar 1 17:53:21 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Tue, 01 Mar 2022 17:53:21 +0000 Subject: [Bug 14626] New: gunzip -cf fails on uncompressed input Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14626 Bug ID: 14626 Summary: gunzip -cf fails on uncompressed input Product: Busybox Version: unspecified Hardware: All OS: Linux Status: NEW Severity: normal Priority: P5 Component: Other Assignee: unassigned at busybox.net Reporter: tchristensen at vet.k-state.edu CC: busybox-cvs at busybox.net Target Milestone: --- Trying to decompress uncompressed output with Busybox gunzip will fail even with the -cf flag passed. Steps to Reproduce ------------------ echo "uncompressed content" >> file gunzip -cf file Actual Results -------------- gunzip: invalid magic Expected Results ---------------- uncompressed content This expected behavior is given by the man page for GNU gunzip: > -f --force: If the input data is not in a format recognized by gzip, and > if the option --stdout is also given, copy the input data without change to > the standard output: let zcat behave as cat. Build date & Hardware --------------------- Unknown: I first encountered this in the biocontainers Docker images, and created the above example with the busybox:1.34.1-uclibc Docker image. -- You are receiving this mail because: You are on the CC list for the bug. From vda.linux at googlemail.com Fri Mar 4 21:57:05 2022 From: vda.linux at googlemail.com (Denys Vlasenko) Date: Fri, 4 Mar 2022 22:57:05 +0100 Subject: [git commit] vi: improved handling of backspace in replace mode Message-ID: <20220304215019.D87718345C@busybox.osuosl.org> commit: https://git.busybox.net/busybox/commit/?id=fc7868602ecf0d761a9a877141add4a9b6918d02 branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master In replace mode ('R' command) the backspace character should get special treatment: - backspace only goes back to the start of the replacement; - backspacing over replaced characters restores the original text. Prior to this commit BusyBox vi deleted the characters both before and after the cursor in replace mode. function old new delta undo_pop - 235 +235 char_insert 858 884 +26 indicate_error 81 84 +3 find_range 654 657 +3 static.text_yank 77 79 +2 do_cmd 4486 4243 -243 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 4/1 up/down: 269/-243) Total: 26 bytes Signed-off-by: Ron Yorston Signed-off-by: Denys Vlasenko --- editors/vi.c | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/editors/vi.c b/editors/vi.c index d37cd48a3..4257c0fdc 100644 --- a/editors/vi.c +++ b/editors/vi.c @@ -224,6 +224,7 @@ #endif +#define isbackspace(c) ((c) == term_orig.c_cc[VERASE] || (c) == 8 || (c) == 127) enum { MAX_TABSTOP = 32, // sanity limit @@ -342,6 +343,7 @@ struct globals { int last_modified_count; // = -1; int cmdline_filecnt; // how many file names on cmd line int cmdcnt; // repetition count + char *rstart; // start of text in Replace mode unsigned rows, columns; // the terminal screen is this size #if ENABLE_FEATURE_VI_ASK_TERMINAL int get_rowcol_error; @@ -474,6 +476,7 @@ struct globals { #define last_modified_count (G.last_modified_count) #define cmdline_filecnt (G.cmdline_filecnt ) #define cmdcnt (G.cmdcnt ) +#define rstart (G.rstart ) #define rows (G.rows ) #define columns (G.columns ) #define crow (G.crow ) @@ -1212,7 +1215,7 @@ static char *get_input_line(const char *prompt) c = get_one_char(); if (c == '\n' || c == '\r' || c == 27) break; // this is end of input - if (c == term_orig.c_cc[VERASE] || c == 8 || c == 127) { + if (isbackspace(c)) { // user wants to erase prev char write1("\b \b"); // erase char on screen buf[--i] = '\0'; @@ -2174,8 +2177,16 @@ static char *char_insert(char *p, char c, int undo) // insert the char c at 'p' p += 1 + stupid_insert(p, ' '); } #endif - } else if (c == term_orig.c_cc[VERASE] || c == 8 || c == 127) { // Is this a BS - if (p > text) { + } else if (isbackspace(c)) { + if (cmd_mode == 2) { + // special treatment for backspace in Replace mode + if (p > rstart) { + p--; +#if ENABLE_FEATURE_VI_UNDO + undo_pop(); +#endif + } + } else if (p > text) { p--; p = text_hole_delete(p, p, ALLOW_UNDO_QUEUED); // shrink buffer 1 char } @@ -3703,9 +3714,9 @@ static void do_cmd(int c) undo_queue_commit(); } else { if (1 <= c || Isprint(c)) { - if (c != 27) - dot = yank_delete(dot, dot, PARTIAL, YANKDEL, ALLOW_UNDO); // delete char - dot = char_insert(dot, c, ALLOW_UNDO_CHAIN); // insert new char + if (c != 27 && !isbackspace(c)) + dot = yank_delete(dot, dot, PARTIAL, YANKDEL, ALLOW_UNDO); + dot = char_insert(dot, c, ALLOW_UNDO_CHAIN); } goto dc1; } @@ -4264,6 +4275,7 @@ static void do_cmd(int c) dc5: cmd_mode = 2; undo_queue_commit(); + rstart = dot; break; case KEYCODE_DELETE: if (dot < end - 1) From bugzilla at busybox.net Wed Mar 16 07:21:12 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Wed, 16 Mar 2022 07:21:12 +0000 Subject: [Bug 14666] New: VERSION 1.30.1 but my vodafone station shows a device (unknown) with version 1.19.4 Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14666 Bug ID: 14666 Summary: VERSION 1.30.1 but my vodafone station shows a device (unknown) with version 1.19.4 Product: Busybox Version: 1.30.x Hardware: All OS: Linux Status: NEW Severity: normal Priority: P5 Component: Other Assignee: unassigned at busybox.net Reporter: bbonvini7 at gmail.com CC: busybox-cvs at busybox.net Target Milestone: --- I login in to my vodafone station and a part from my recognizable and active devices, I spotted an unknown device whose description is: udhcp 1.19.4-VD Linux VDLinux.3.1.1.x (5GHz). This device at the moment of enquiry was not connected but its busybox version differs from the version I have installed in my OS. Actually I did not even know what busybox is and if it comes embedded in my ubuntu version (20.4 upgraded in to 21.10) but once I listed it in terminal, I noticed that its version is 1.30.1 and it differs from version of the unknown and undefined device. Does this have an explanation? how I can individuate the details of unknown (to me) device? I will attach a screen shot about what retrieved into my system many thanks for your support. -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Wed Mar 16 07:34:45 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Wed, 16 Mar 2022 07:34:45 +0000 Subject: [Bug 14666] VERSION 1.30.1 but my vodafone station shows a device (unknown) with version 1.19.4 In-Reply-To: References: Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14666 Barbara Bonvini changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |bbonvini7 at gmail.com --- Comment #1 from Barbara Bonvini --- Created attachment 9246 --> https://bugs.busybox.net/attachment.cgi?id=9246&action=edit terminal screen shot and devices connected -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Wed Mar 16 08:18:22 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Wed, 16 Mar 2022 08:18:22 +0000 Subject: [Bug 14666] VERSION 1.30.1 but my vodafone station shows a device (unknown) with version 1.19.4 In-Reply-To: References: Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14666 Barbara Bonvini changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |INVALID -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Wed Mar 16 20:59:58 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Wed, 16 Mar 2022 20:59:58 +0000 Subject: [Bug 14671] New: nslookup not working in Kubernetes Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14671 Bug ID: 14671 Summary: nslookup not working in Kubernetes Product: Busybox Version: unspecified Hardware: All OS: Linux Status: NEW Severity: normal Priority: P5 Component: Networking Assignee: unassigned at busybox.net Reporter: info at thomas-guettler.de CC: busybox-cvs at busybox.net Target Milestone: --- busyboy with version greater than 1.28 seem to have a bug. Several users of Kubernetes reported, that the issues still exists. See: https://github.com/docker-library/busybox/issues/48 The issue was reported several months ago, but the fix did not solve the issue: https://bugs.busybox.net/show_bug.cgi?id=11161 -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Wed Mar 16 21:13:46 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Wed, 16 Mar 2022 21:13:46 +0000 Subject: [Bug 14671] nslookup not working in Kubernetes In-Reply-To: References: Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14671 --- Comment #1 from Thomas G?ttler --- you can reproduce it like this: # install kind: https://kind.sigs.k8s.io/docs/user/quick-start/ kind create cluster guettli at p15:~/.kube$ cat busy-new.yaml apiVersion: v1 kind: Pod metadata: name: busybox-new namespace: default spec: containers: - name: busybox image: busybox command: - sleep - "3600" imagePullPolicy: IfNotPresent restartPolicy: Always guettli at p15:~/.kube$ kubectl apply -f busy-new.yaml guettli at p15:~/.kube$ kubectl exec -ti busybox-new -- nslookup kubernetes.default Server: 10.96.0.10 Address: 10.96.0.10:53 ** server can't find kubernetes.default: NXDOMAIN ---------- If you use "busybox:1.28" as image, it works fine. -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Wed Mar 16 23:03:12 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Wed, 16 Mar 2022 23:03:12 +0000 Subject: [Bug 14671] nslookup not working in Kubernetes In-Reply-To: References: Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14671 Tianon Gravi changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |admwiggin+busyboxbugs at gmail | |.com --- Comment #2 from Tianon Gravi --- A simpler reproducer (that does not require Kubernetes) is something like this: $ docker run --rm --pull=always --dns-search=f1 --dns-search=f2 --dns-search=f3 --dns-search=google.com --dns 1.1.1.1 busybox:uclibc nslookup www ... ** server can't find www.f1: NXDOMAIN ... If you drop the number of search domains down to just three, it works: $ docker run --rm --pull=always --dns-search=f1 --dns-search=f2 --dns-search=google.com --dns 1.1.1.1 busybox:uclibc nslookup www ... Non-authoritative answer: Name: www.google.com Address: 142.250.176.4 ... This was on BusyBox version 1.34.1 built against uClibc-ng via buildroot. Interestingly, it does *not* reproduce if I switch to "busybox:glibc" (built against Debian's glibc) or "busybox:musl" (built against Alpine's musl). -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Thu Mar 17 22:33:27 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Thu, 17 Mar 2022 22:33:27 +0000 Subject: [Bug 14671] nslookup not working in Kubernetes In-Reply-To: References: Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14671 --- Comment #3 from ghicken at vmware.com --- Can you confirm whether this is still related to concurrent issue of A and AAAA lookup as per https://bugs.busybox.net/show_bug.cgi?id=11161#c4 ? For the prior bug, specifying -type=a consistently removed the intermittent failure (which presented when there was no AAAA record). -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Sat Mar 26 10:20:22 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Sat, 26 Mar 2022 10:20:22 +0000 Subject: [Bug 14691] New: Confusing message when calling sed -i incorrectly Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14691 Bug ID: 14691 Summary: Confusing message when calling sed -i incorrectly Product: Busybox Version: 1.33.x Hardware: All OS: Linux Status: NEW Severity: minor Priority: P5 Component: Other Assignee: unassigned at busybox.net Reporter: infor at rudhar.com CC: busybox-cvs at busybox.net Target Milestone: --- When calling sed in BusyBox v1.34.1 erroneously as: sed -i -f script where script exists and contains valid sed commands, the error message is: sed: -i requires an argument That is correct, but confusing. I first thought it referred to the optional argument of -i, a filename suffix for a backup of the file to be edited in place (or backups of the files ..., etc.). But being optional, that argument is not required. GNU sed (4.7) in the same situation says: sed: no input files which I think makes it clearer what the actual error is: sed can edit a stdin stream, but not edit it in place. So when using the -i option, you must specify the names of one of more files to be edited, files that reside on disk. Without -i, that is not required. -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Sun Mar 27 06:00:38 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Sun, 27 Mar 2022 06:00:38 +0000 Subject: [Bug 14696] New: Website designer company in Pune Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14696 Bug ID: 14696 Summary: Website designer company in Pune Product: Busybox Version: unspecified Hardware: All OS: Linux Status: NEW Severity: normal Priority: P5 Component: Website Assignee: unassigned at busybox.net Reporter: mohel83964 at moonran.com CC: busybox-cvs at busybox.net Target Milestone: --- Spwebconnect is a best website development company in pune. We also provide website designing services in Mumbai, Dhule, Nashik, Jalgaon, Nagar, Kolhapur, Goa, etc. We Develop Static as well as Dynamic Mobile Responsive Website, Custom Softwares, Android and iOS applications. We just love to give more than our client's expectations, be it in terms of quantity, quality or commitment. And we have been quite successful in that too! Because, within few years we got many projects, one of few are fully fledged e-Commerce websites, ERP, Vendor Management system. And none of these clients came through any advertising our SEO team dedicatedly works for our website ranking on Google search. https://spwebconnect.com/ -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Mon Mar 28 18:34:04 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Mon, 28 Mar 2022 18:34:04 +0000 Subject: [Bug 14671] nslookup not working in Kubernetes In-Reply-To: References: Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14671 --- Comment #4 from Thomas G?ttler --- Just for the recors, in the past there have been DNS issues with other libc implementations. Maybe this helps to solve the uclibc-ng issue: https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/#known-issues -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Tue Mar 29 13:25:50 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Tue, 29 Mar 2022 13:25:50 +0000 Subject: [Bug 14716] New: top -m doesn't report highest memory consummer Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14716 Bug ID: 14716 Summary: top -m doesn't report highest memory consummer Product: Busybox Version: 1.33.x Hardware: Other OS: Linux Status: NEW Severity: minor Priority: P5 Component: Other Assignee: unassigned at busybox.net Reporter: frederic.delabre at non.se.com CC: busybox-cvs at busybox.net Target Milestone: --- Hi, Is there a reason why "top" and "top -m" use a different way of computing VSZ ? When I run "top -m" as a regular user, it doesn't report some processes because it fails to compute their VSZ (Virtual Memory Size). This happens not only on root processes, but also on some of the user processes (java in my case). Looking into the code, I found that "top" and "top -m" have a different method of computing VSZ. Howerever, "top -m" needs permissions to read "/proc/XX/smaps" and failed to get the VSZ for some processes. VSZ is set to 0 and the proces is ignored. Is there a reason for doing so ? in procps/top.c, function top_main(), around line 1201: [I removed many lines] IF_FEATURE_TOPMEM(if (scan_mask != TOPMEM_MASK)) { top[n].vsz = p->vsz; } else { /* TOPMEM */ topmem[n].vsz = p->smaps.mapped_rw + p->smaps.mapped_ro; -- You are receiving this mail because: You are on the CC list for the bug. From bugzilla at busybox.net Wed Mar 30 13:18:51 2022 From: bugzilla at busybox.net (bugzilla at busybox.net) Date: Wed, 30 Mar 2022 13:18:51 +0000 Subject: [Bug 14726] New: Blank password in /etc/passwd results in no username displayed in a prompt Message-ID: https://bugs.busybox.net/show_bug.cgi?id=14726 Bug ID: 14726 Summary: Blank password in /etc/passwd results in no username displayed in a prompt Product: Busybox Version: 1.33.x Hardware: Other OS: Linux Status: NEW Severity: normal Priority: P5 Component: Standard Compliance Assignee: unassigned at busybox.net Reporter: tomasz.g.markiewicz at gmail.com CC: busybox-cvs at busybox.net Target Milestone: --- Created attachment 9261 --> https://bugs.busybox.net/attachment.cgi?id=9261&action=edit Dot config file The actual version is 1.34.1, but it wasn't possible to select that version during bug submitting. The general problem is with no username being displayed when there is a blank password in /etc/passwd. PS is set to: ---------------------- $ echo $PS1 \u@\h:\w\$ /etc/passwd: ---------------------- root:x:0:0:root:/root:/bin/ash # (Skipped...) analog::1000:1000:analog,,,:/home/analog:/bin/ash Obviously the 'analog' user does not have its name in a prompt and root has. Adding or removing 'x' in password field fixes (or creates) the problem regardless of user account (also checked with the second non-root user -- just not shown here). According to manpage (man 5 passwd), the password field can be blank, thus I marked it as 'Standard Compliance'. Man page also say that using 'x' as a password requires providing corresponding /etc/shadow, which I have no intention of adding. Besides, /etc/shadow is parsed using probably the exact same mechanism, so it doesn't look like a viable solution. NOTE: It worked fine with BusyBox 1.24.2. If this can be fixed with .config tweaking, I would be grateful for some hints. :) If it is important, I use it with musl libc 1.2.2, Binutils 2.38, compiled with GCC 11.2. Xilinx's Linux: $ uname -r 4.14.0-xilinx-ge77ffb40e9a0 I was able to track the problem to 'parse_common' function in 'libpwdgrp/pwd_grp.c', these line(s): if (strcmp(key, nth_string(buf, field_pos)) == 0) { /* record found */ break; } It seems that 'nth_string' in 'libbb/compare_string_array.c' treats two consecutive '\0' as the end of the string (Huffman wouldn't be proud :)). nth_string(buf, field_pos) returns this (compare with /etc/shadow file excerpt shown above): ------------------------------------------------------- ash: TGM: pwd_grp: parse_common: buf (after tokenize): [root] ash: TGM: pwd_grp: parse_common: nth_string_result: [0] ash: TGM: pwd_grp: parse_common: buf (after tokenize): [analog] ash: TGM: pwd_grp: parse_common: nth_string_result: [] While the 'key' passed to parse_common was: '1000' Call stack: ---------------- shell/ash.c: ??? -> ??? // I'm not sure if I started from here... libbb/lineedit.c: read_line_input-> // user_buf is set to NULL, due to: libpwdgrp/pwd_grp.c: getpwuid -> getXXXnam -> parse_file -> parse_common -- You are receiving this mail because: You are on the CC list for the bug.