]> git.ipfire.org Git - thirdparty/man-pages.git/blame - man3/byteorder.3
getaddrinfo.3: Fix off-by-one error in example client program
[thirdparty/man-pages.git] / man3 / byteorder.3
CommitLineData
fea681da
MK
1.\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk)
2.\"
93015253 3.\" %%%LICENSE_START(VERBATIM)
fea681da
MK
4.\" Permission is granted to make and distribute verbatim copies of this
5.\" manual provided the copyright notice and this permission notice are
6.\" preserved on all copies.
7.\"
8.\" Permission is granted to copy and distribute modified versions of this
9.\" manual under the conditions for verbatim copying, provided that the
10.\" entire resulting derived work is distributed under the terms of a
11.\" permission notice identical to this one.
c13182ef 12.\"
fea681da
MK
13.\" Since the Linux kernel and libraries are constantly changing, this
14.\" manual page may be incorrect or out-of-date. The author(s) assume no
15.\" responsibility for errors or omissions, or for damages resulting from
16.\" the use of the information contained herein. The author(s) may not
17.\" have taken the same level of care in the production of this manual,
18.\" which is licensed free of charge, as they might when working
19.\" professionally.
c13182ef 20.\"
fea681da
MK
21.\" Formatted or processed versions of this manual, if unaccompanied by
22.\" the source, must acknowledge the copyright and authors of this work.
4b72fb64 23.\" %%%LICENSE_END
fea681da
MK
24.\"
25.\" References consulted:
26.\" Linux libc source code
27.\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991)
28.\" 386BSD man pages
29.\" Modified Sat Jul 24 21:29:05 1993 by Rik Faith (faith@cs.unc.edu)
30.\" Modified Thu Jul 26 14:06:20 2001 by Andries Brouwer (aeb@cwi.nl)
31.\"
4b8c67d9 32.TH BYTEORDER 3 2017-09-15 "GNU" "Linux Programmer's Manual"
fea681da
MK
33.SH NAME
34htonl, htons, ntohl, ntohs \- convert values between host and network
35byte order
36.SH SYNOPSIS
37.nf
d1a6e6ff 38.B #include <arpa/inet.h>
68e4db0a 39.PP
fea681da 40.BI "uint32_t htonl(uint32_t " hostlong );
68e4db0a 41.PP
fea681da 42.BI "uint16_t htons(uint16_t " hostshort );
68e4db0a 43.PP
fea681da 44.BI "uint32_t ntohl(uint32_t " netlong );
68e4db0a 45.PP
fea681da
MK
46.BI "uint16_t ntohs(uint16_t " netshort );
47.fi
48.SH DESCRIPTION
60a90ecd
MK
49The
50.BR htonl ()
c6fa0841
MK
51function converts the unsigned integer
52.I hostlong
fea681da
MK
53from host byte order to network byte order.
54.PP
60a90ecd
MK
55The
56.BR htons ()
c6fa0841
MK
57function converts the unsigned short integer
58.I hostshort
fea681da
MK
59from host byte order to network byte order.
60.PP
60a90ecd
MK
61The
62.BR ntohl ()
c6fa0841
MK
63function converts the unsigned integer
64.I netlong
fea681da
MK
65from network byte order to host byte order.
66.PP
60a90ecd
MK
67The
68.BR ntohs ()
c6fa0841
MK
69function converts the unsigned short integer
70.I netshort
fea681da
MK
71from network byte order to host byte order.
72.PP
34ccb744 73On the i386 the host byte order is Least Significant Byte first,
c13182ef 74whereas the network byte order, as used on the Internet, is Most
fea681da 75Significant Byte first.
7998494a 76.SH ATTRIBUTES
9fd47058
MK
77For an explanation of the terms used in this section, see
78.BR attributes (7).
79.TS
80allbox;
81lbw34 lb lb
82l l l.
83Interface Attribute Value
84T{
7998494a
PH
85.BR htonl (),
86.BR htons (),
87.BR ntohl (),
7998494a 88.BR ntohs ()
9fd47058
MK
89T} Thread safety MT-Safe
90.TE
47297adb 91.SH CONFORMING TO
855dcf18 92POSIX.1-2001, POSIX.1-2008.
847e0d88 93.PP
c13182ef
MK
94Some systems require the inclusion of
95.I <netinet/in.h>
96instead of
d1a6e6ff 97.IR <arpa/inet.h> .
47297adb 98.SH SEE ALSO
b1bc4fd1 99.BR bswap (3),
095fdaea 100.BR endian (3),
fea681da
MK
101.BR gethostbyname (3),
102.BR getservent (3)