Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sun, 6 Nov 2022 18:39:04 -0500
From: Rich Felker <dalias@...c.org>
To: Dmitry Bogatov <oht-tfnfy#tah.bet#i1@...tion.cc>
Cc: bug-gsasl@....org, musl@...ts.openwall.com
Subject: Re: Behaviour of strverscmp(3)

On Sun, Nov 06, 2022 at 06:18:22PM -0500, Dmitry Bogatov wrote:
> Hello.
> 
> While trying to building gsasl statically with musl library as part of
> Nixpkgs distribution, I noticed that test built from tests/version.c
> fails when built with musl library. After a bit of troubleshooting, I
> can pinpoint the reason -- different behaviour of "strverscmp" from
> glibc and musl.
> 
> Example code:
> 
> #include <string.h>
> #include <stdio.h>
> 
> int main()
> {
> 	int value = strverscmp("UNKNOWN", "2.2.0");
> 	printf("%d\n", value);
> 	return 0;
> }
> 
> Under glibc value "35" is printed (positive), under musl value "-1" is
> printed (negative). Not sure what is the correct solution for the
> issue, so I cross-post into two lists.
> 
> For now I plan to patch-out this particular test. Thank you.

It looks like we're neglecting to honor the exception case to "longer
digit sequence is greater" when one of the sequences is degenerate (no
digits).

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.