** Description changed:
+ [Impact]
+ htons() on non x86 platforms is missing a cast to uint16_t which causes FTBFS
of mosh on armel and armhf.
+
+ [Development Fix]
+ This has been fixed in eglibc in Quantal.
+
+ [Stable Fix]
+ A fix can be backported from the Quantal development version into Precise.
+
+ [Test Case]
+ See https://bugs.launchpad.net/ubuntu/+source/eglibc/+bug/1016349/comments/2
+ On how to reproduce with a C program.
+
+ [Regression Potential]
+ This patch affects some of the generic byteswaping code in eglibc. The fix
for x86 arches was already completed years ago, and this patch fixes is for
other arches.
+
+ --
+
The definition of htons() on platforms other than i386 and amd64 is
missing a cast to uint16_t, which caused this FTBFS of mosh on armel and
armhf:
https://launchpad.net/ubuntu/+source/mosh/1.2.1-1ubuntu1/+build/3582950
network.cc:76:28: error: narrowing conversion of '({...})' from 'unsigned
int' to 'uint16_t {aka short unsigned int}' inside { } is ill-formed in C++11
[-Werror=narrowing]
network.cc:76:50: error: narrowing conversion of '({...})' from 'unsigned
int' to 'uint16_t {aka short unsigned int}' inside { } is ill-formed in C++11
[-Werror=narrowing]
(We didn’t see this before because this warning is new in GCC 4.7.)
This was fixed for glibc 2.16 in
http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=2174c6dd8555f654c30df2f8f3321b69e0f736f8
** Changed in: eglibc (Ubuntu Precise)
Assignee: (unassigned) => Adam Conrad (adconrad)
** Changed in: eglibc (Ubuntu Precise)
Importance: Undecided => Medium
** Changed in: eglibc (Ubuntu Precise)
Status: New => In Progress
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1016349
Title:
htons() returns wrong type on non-{i386,amd64} platforms
To manage notifications about this bug go to:
https://bugs.launchpad.net/eglibc/+bug/1016349/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs