Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(27)

Issue 22625004: Adds htonl, htons, ntohl, and ntohs to newlib (Closed)

Created:
7 years, 4 months ago by torinmr
Modified:
7 years, 4 months ago
CC:
chromium-reviews, cbentzel+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@gethostbyname
Visibility:
Public.

Description

Adds htonl, htons, ntohl, and ntohs to newlib I've implemented the four functions for converting from host to network byte order and vice-versa. This is necessary because newlib does not provide them. I've also added prototypes for these functions to netinet/in.h, and deleted some macro definitions in arpa/inet.h that Sam pointed out would cause subtle bugs if users tried to forward declare inet_ntoa() and inet_ntop(). NOTRY=true BUG=None TEST=None R=noelallen@chromium.org,bradnelson@google.com Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=216706

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Total comments: 21

Patch Set 4 : Review changes #

Total comments: 4

Patch Set 5 : Merged with new master #

Patch Set 6 : Fixed comment problem #

Patch Set 7 : Fixed remaining bad casts #

Total comments: 4

Patch Set 8 : Fixed Merge Conflict with Master #

Unified diffs Side-by-side diffs Delta from patch set Stats (+150 lines, -25 lines) Patch
M native_client_sdk/src/build_tools/sdk_files.list View 1 2 3 4 5 6 7 2 chunks +4 lines, -0 lines 0 comments Download
M native_client_sdk/src/libraries/nacl_io/library.dsc View 1 2 3 4 5 6 7 2 chunks +4 lines, -0 lines 0 comments Download
A native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c View 1 2 3 1 chunk +23 lines, -0 lines 0 comments Download
A native_client_sdk/src/libraries/nacl_io/syscalls/htons.c View 1 2 3 1 chunk +21 lines, -0 lines 0 comments Download
M native_client_sdk/src/libraries/nacl_io/syscalls/inet_ntoa.cc View 1 2 3 4 1 chunk +3 lines, -3 lines 0 comments Download
M native_client_sdk/src/libraries/nacl_io/syscalls/inet_ntop.cc View 1 2 3 4 5 1 chunk +3 lines, -3 lines 0 comments Download
A native_client_sdk/src/libraries/nacl_io/syscalls/ntohl.c View 1 2 3 1 chunk +21 lines, -0 lines 0 comments Download
A native_client_sdk/src/libraries/nacl_io/syscalls/ntohs.c View 1 2 3 1 chunk +19 lines, -0 lines 0 comments Download
M native_client_sdk/src/libraries/nacl_io_test/socket_test.cc View 1 2 3 4 5 6 4 chunks +42 lines, -4 lines 0 comments Download
M native_client_sdk/src/libraries/third_party/newlib-extras/README.chromium View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M native_client_sdk/src/libraries/third_party/newlib-extras/arpa/inet.h View 1 2 3 1 chunk +0 lines, -15 lines 0 comments Download
M native_client_sdk/src/libraries/third_party/newlib-extras/netinet/in.h View 1 chunk +7 lines, -0 lines 0 comments Download

Messages

Total messages: 21 (0 generated)
torinmr
7 years, 4 months ago (2013-08-08 01:13:25 UTC) #1
bradn
lgtm
7 years, 4 months ago (2013-08-08 01:29:20 UTC) #2
Sam Clegg
https://chromiumcodereview.appspot.com/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c File native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c (right): https://chromiumcodereview.appspot.com/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c#newcode18 native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c:18: #endif // defined(PROVIDES_SOCKET_API) && !defined(__GLIBC__) Use C++ comment https://chromiumcodereview.appspot.com/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htons.c ...
7 years, 4 months ago (2013-08-08 01:47:25 UTC) #3
binji
https://codereview.chromium.org/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c File native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c (right): https://codereview.chromium.org/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c#newcode14 native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c:14: uint32_t* result = (uint32_t*) result_bytes; This breaks strict aliasing ...
7 years, 4 months ago (2013-08-08 16:07:21 UTC) #4
Sam Clegg
On 2013/08/08 16:07:21, binji wrote: > https://codereview.chromium.org/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c > File native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c (right): > > https://codereview.chromium.org/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c#newcode14 > ...
7 years, 4 months ago (2013-08-08 16:45:02 UTC) #5
torinmr
https://chromiumcodereview.appspot.com/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c File native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c (right): https://chromiumcodereview.appspot.com/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c#newcode18 native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c:18: #endif // defined(PROVIDES_SOCKET_API) && !defined(__GLIBC__) On 2013/08/08 16:07:21, binji ...
7 years, 4 months ago (2013-08-08 17:01:21 UTC) #6
binji
On 2013/08/08 16:45:02, Sam Clegg wrote: > On 2013/08/08 16:07:21, binji wrote: > > > ...
7 years, 4 months ago (2013-08-08 17:02:30 UTC) #7
torinmr
https://chromiumcodereview.appspot.com/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c File native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c (right): https://chromiumcodereview.appspot.com/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c#newcode14 native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c:14: uint32_t* result = (uint32_t*) result_bytes; On 2013/08/08 16:07:21, binji ...
7 years, 4 months ago (2013-08-08 17:10:07 UTC) #8
Sam Clegg
lgtm https://chromiumcodereview.appspot.com/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io_test/socket_test.cc File native_client_sdk/src/libraries/nacl_io_test/socket_test.cc (right): https://chromiumcodereview.appspot.com/22625004/diff/4001/native_client_sdk/src/libraries/nacl_io_test/socket_test.cc#newcode272 native_client_sdk/src/libraries/nacl_io_test/socket_test.cc:272: uint32_t host_long = 0x44332211; On 2013/08/08 17:01:22, torinmr ...
7 years, 4 months ago (2013-08-08 17:21:39 UTC) #9
binji
https://codereview.chromium.org/22625004/diff/21001/native_client_sdk/src/libraries/nacl_io_test/socket_test.cc File native_client_sdk/src/libraries/nacl_io_test/socket_test.cc (right): https://codereview.chromium.org/22625004/diff/21001/native_client_sdk/src/libraries/nacl_io_test/socket_test.cc#newcode397 native_client_sdk/src/libraries/nacl_io_test/socket_test.cc:397: uint16_t *network_short = reinterpret_cast<uint16_t*>(network_bytes); same issue here, no? https://codereview.chromium.org/22625004/diff/21001/native_client_sdk/src/libraries/nacl_io_test/socket_test.cc#newcode404 ...
7 years, 4 months ago (2013-08-08 17:56:44 UTC) #10
torinmr
https://codereview.chromium.org/22625004/diff/21001/native_client_sdk/src/libraries/nacl_io_test/socket_test.cc File native_client_sdk/src/libraries/nacl_io_test/socket_test.cc (right): https://codereview.chromium.org/22625004/diff/21001/native_client_sdk/src/libraries/nacl_io_test/socket_test.cc#newcode397 native_client_sdk/src/libraries/nacl_io_test/socket_test.cc:397: uint16_t *network_short = reinterpret_cast<uint16_t*>(network_bytes); Darn, you're right! On 2013/08/08 ...
7 years, 4 months ago (2013-08-08 19:09:38 UTC) #11
Sam Clegg
https://codereview.chromium.org/22625004/diff/26002/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c File native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c (right): https://codereview.chromium.org/22625004/diff/26002/native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c#newcode16 native_client_sdk/src/libraries/nacl_io/syscalls/htonl.c:16: result_bytes[3] = (uint8_t) (hostlong & 0xFF); This code is ...
7 years, 4 months ago (2013-08-08 19:34:44 UTC) #12
Sam Clegg
OK, after discussing with you I think its fine to have these trivial routines be ...
7 years, 4 months ago (2013-08-08 21:32:54 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/torinmr@chromium.org/22625004/26002
7 years, 4 months ago (2013-08-08 21:46:57 UTC) #14
commit-bot: I haz the power
Retried try job too often on linux_chromeos for step(s) interactive_ui_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=linux_chromeos&number=143876
7 years, 4 months ago (2013-08-09 00:07:44 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/torinmr@chromium.org/22625004/26002
7 years, 4 months ago (2013-08-09 00:41:30 UTC) #16
commit-bot: I haz the power
Retried try job too often on linux_chromeos for step(s) interactive_ui_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=linux_chromeos&number=143971
7 years, 4 months ago (2013-08-09 01:56:59 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/torinmr@chromium.org/22625004/26002
7 years, 4 months ago (2013-08-09 04:33:50 UTC) #18
commit-bot: I haz the power
Failed to apply patch for native_client_sdk/src/build_tools/sdk_files.list: While running patch -p1 --forward --force --no-backup-if-mismatch; patching file ...
7 years, 4 months ago (2013-08-09 04:34:01 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/torinmr@chromium.org/22625004/67001
7 years, 4 months ago (2013-08-09 16:29:20 UTC) #20
commit-bot: I haz the power
7 years, 4 months ago (2013-08-09 16:31:10 UTC) #21
Message was sent while issue was closed.
Change committed as 216706

Powered by Google App Engine
This is Rietveld 408576698