From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/992 Path: news.gmane.org!not-for-mail From: Isaac Dunham Newsgroups: gmane.linux.lib.musl.general Subject: Re: bug? sysinfo() and getopt_long() misbehavior Date: Thu, 7 Jun 2012 22:37:07 -0700 Message-ID: <20120607223707.3cb647a8@newbook> References: <20120608005148.7d82c40b@sibserver.ru> <20120608031243.GG163@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1339133841 8339 80.91.229.3 (8 Jun 2012 05:37:21 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 8 Jun 2012 05:37:21 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-993-gllmg-musl=m.gmane.org@lists.openwall.com Fri Jun 08 07:37:20 2012 Return-path: Envelope-to: gllmg-musl@plane.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1Scrst-0008Rx-QG for gllmg-musl@plane.gmane.org; Fri, 08 Jun 2012 07:37:19 +0200 Original-Received: (qmail 16376 invoked by uid 550); 8 Jun 2012 05:37:19 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 16368 invoked from network); 8 Jun 2012 05:37:19 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=lavabit; d=lavabit.com; b=tsQDiLM0WvL41xRmpzwyW3cNsHuXkKnKrZhtautfq5pY4XGVv3oe4bqEb6Y1rECdZ8VryrmnNpgixaFlKUalUpr8g+iA5SttkcZYmZIyjNXU2ZR190uBNpSNo9JVNoqQr+XMwFjtD4x3MxZySWwl0+rB7xq3DZUxo3YTAnoKq0M=; h=Date:From:To:Subject:Message-ID:In-Reply-To:References:X-Mailer:Mime-Version:Content-Type:Content-Transfer-Encoding; In-Reply-To: <20120608031243.GG163@brightrain.aerifal.cx> X-Mailer: Claws Mail 3.7.4 (GTK+ 2.20.1; i486-pc-linux-gnu) Xref: news.gmane.org gmane.linux.lib.musl.general:992 Archived-At: On Thu, 7 Jun 2012 23:12:43 -0400 Rich Felker wrote: > > - (did not investigated properly) possible getopt_long() > > misbehavior, or just miscompile. The result is that iptables and > > gnu sed misbehaving at command line arguments: > > % sed -i '/test/d' ttnosuchfile > > sed: can't find label for jump to `tnosuchfile' > > My GNU sed build does not exhibit this behavior. It's linked with an > older musl, but the getopt code has not changed. Is it possible you > did anything odd building musl (editing the makefile/cflags)? Does the > same happen if you static link sed? If your answers to these questions > suggest a problem in musl, I'll rebuild sed and see if I can reproduce > it. > > > % sed '/test/d' -i ttnosuchfile > > sed: can't read -i: No such file or directory > > sed: can't read ttnosuchfile: No such file or directory > > This is to be expected. Options must come before non-option arguments. > The glibc behavior to the contrary is broken and non-conformant. sed -e '...' -i ... is more conventional, and might persuade getopt_long to cooperate... > > # iptables -vnL > > iptables v1.4.12.1: unknown arguments found on commandline > > Try `iptables -h' or 'iptables --help' for more information. > > # iptables --version > > iptables v1.4.12.1: unknown arguments found on commandline > > Try `iptables -h' or 'iptables --help' for more information. > > > > Both sed and iptables were compiled with -D_GNU_SOURCE defined. > > > > Unfortunately I don't actually know how to fix these two. > > I'm suspecting something is broken with respect to dynamic linking... > Are you using an old version of binutils? Did you remove or replace > -Bsymbolic-functions with something else? Definitely not, I'd say--that doesn't just misbehave, it will die with a SIGILL before it gets to main().