xref: /freebsd/lib/libc/net/byteorder.3 (revision dc36d6f9bb1753f3808552f3afd30eda9a7b206a)
158f0484fSRodney W. Grimes.\" Copyright (c) 1983, 1991, 1993
258f0484fSRodney W. Grimes.\"	The Regents of the University of California.  All rights reserved.
358f0484fSRodney W. Grimes.\"
458f0484fSRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without
558f0484fSRodney W. Grimes.\" modification, are permitted provided that the following conditions
658f0484fSRodney W. Grimes.\" are met:
758f0484fSRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright
858f0484fSRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer.
958f0484fSRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright
1058f0484fSRodney W. Grimes.\"    notice, this list of conditions and the following disclaimer in the
1158f0484fSRodney W. Grimes.\"    documentation and/or other materials provided with the distribution.
12*fbbd9655SWarner Losh.\" 3. Neither the name of the University nor the names of its contributors
1358f0484fSRodney W. Grimes.\"    may be used to endorse or promote products derived from this software
1458f0484fSRodney W. Grimes.\"    without specific prior written permission.
1558f0484fSRodney W. Grimes.\"
1658f0484fSRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
1758f0484fSRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
1858f0484fSRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
1958f0484fSRodney W. Grimes.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
2058f0484fSRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
2158f0484fSRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2258f0484fSRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2358f0484fSRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2458f0484fSRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2558f0484fSRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
2658f0484fSRodney W. Grimes.\" SUCH DAMAGE.
2758f0484fSRodney W. Grimes.\"
284bced63fSSimon L. B. Nielsen.Dd March 20, 2005
2958f0484fSRodney W. Grimes.Dt BYTEORDER 3
30a307d598SRuslan Ermilov.Os
3158f0484fSRodney W. Grimes.Sh NAME
3258f0484fSRodney W. Grimes.Nm htonl ,
3358f0484fSRodney W. Grimes.Nm htons ,
3458f0484fSRodney W. Grimes.Nm ntohl ,
3558f0484fSRodney W. Grimes.Nm ntohs
3658f0484fSRodney W. Grimes.Nd convert values between host and network byte order
3725bb73e0SAlexey Zelkin.Sh LIBRARY
3825bb73e0SAlexey Zelkin.Lb libc
3958f0484fSRodney W. Grimes.Sh SYNOPSIS
4032eef9aeSRuslan Ermilov.In arpa/inet.h
41f605f816SMike Barcroft.Pp
42f605f816SMike Barcroftor
43f605f816SMike Barcroft.Pp
44f605f816SMike Barcroft.In netinet/in.h
4503516cfeSMike Barcroft.Ft uint32_t
4603516cfeSMike Barcroft.Fn htonl "uint32_t hostlong"
4703516cfeSMike Barcroft.Ft uint16_t
4803516cfeSMike Barcroft.Fn htons "uint16_t hostshort"
4903516cfeSMike Barcroft.Ft uint32_t
5003516cfeSMike Barcroft.Fn ntohl "uint32_t netlong"
5103516cfeSMike Barcroft.Ft uint16_t
5203516cfeSMike Barcroft.Fn ntohs "uint16_t netshort"
5358f0484fSRodney W. Grimes.Sh DESCRIPTION
5458f0484fSRodney W. GrimesThese routines convert 16 and 32 bit quantities between network
5558f0484fSRodney W. Grimesbyte order and host byte order.
5658f0484fSRodney W. GrimesOn machines which have a byte order which is the same as the network
5758f0484fSRodney W. Grimesorder, routines are defined as null macros.
5858f0484fSRodney W. Grimes.Pp
5958f0484fSRodney W. GrimesThese routines are most often used in conjunction with Internet
6058f0484fSRodney W. Grimesaddresses and ports as returned by
6158f0484fSRodney W. Grimes.Xr gethostbyname 3
6258f0484fSRodney W. Grimesand
6358f0484fSRodney W. Grimes.Xr getservent 3 .
6458f0484fSRodney W. Grimes.Sh SEE ALSO
6558f0484fSRodney W. Grimes.Xr gethostbyname 3 ,
664bced63fSSimon L. B. Nielsen.Xr getservent 3 ,
674bced63fSSimon L. B. Nielsen.Xr byteorder 9
6803516cfeSMike Barcroft.Sh STANDARDS
6903516cfeSMike BarcroftThe
7003516cfeSMike Barcroft.Nm byteorder
71f605f816SMike Barcroftfunctions conform to
72edd2da71SRuslan Ermilov.St -p1003.1-2001 .
7358f0484fSRodney W. Grimes.Sh HISTORY
7458f0484fSRodney W. GrimesThe
7558f0484fSRodney W. Grimes.Nm byteorder
7658f0484fSRodney W. Grimesfunctions appeared in
7758f0484fSRodney W. Grimes.Bx 4.2 .
7858f0484fSRodney W. Grimes.Sh BUGS
7958f0484fSRodney W. GrimesOn the
8058f0484fSRodney W. Grimes.Tn VAX
8158f0484fSRodney W. Grimesbytes are handled backwards from most everyone else in
821a0a9345SRuslan Ermilovthe world.
831a0a9345SRuslan ErmilovThis is not expected to be fixed in the near future.
84