Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-or-later */
0002 /*
0003  *      Swansea University Computer Society NET3
0004  *
0005  *  This work is derived from NET2Debugged, which is in turn derived
0006  *  from NET2D which was written by:
0007  *      Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
0008  *
0009  *      This work was derived from Ross Biro's inspirational work
0010  *      for the LINUX operating system.  His version numbers were:
0011  *
0012  *      $Id: Space.c,v     0.8.4.5  1992/12/12 19:25:04 bir7 Exp $
0013  *      $Id: arp.c,v       0.8.4.6  1993/01/28 22:30:00 bir7 Exp $
0014  *      $Id: arp.h,v       0.8.4.6  1993/01/28 22:30:00 bir7 Exp $
0015  *      $Id: dev.c,v       0.8.4.13 1993/01/23 18:00:11 bir7 Exp $
0016  *      $Id: dev.h,v       0.8.4.7  1993/01/23 18:00:11 bir7 Exp $
0017  *      $Id: eth.c,v       0.8.4.4  1993/01/22 23:21:38 bir7 Exp $
0018  *      $Id: eth.h,v       0.8.4.1  1992/11/10 00:17:18 bir7 Exp $
0019  *      $Id: icmp.c,v      0.8.4.9  1993/01/23 18:00:11 bir7 Exp $
0020  *      $Id: icmp.h,v      0.8.4.2  1992/11/15 14:55:30 bir7 Exp $
0021  *      $Id: ip.c,v        0.8.4.8  1992/12/12 19:25:04 bir7 Exp $
0022  *      $Id: ip.h,v        0.8.4.2  1993/01/23 18:00:11 bir7 Exp $
0023  *      $Id: loopback.c,v  0.8.4.8  1993/01/23 18:00:11 bir7 Exp $
0024  *      $Id: packet.c,v    0.8.4.7  1993/01/26 22:04:00 bir7 Exp $
0025  *      $Id: protocols.c,v 0.8.4.3  1992/11/15 14:55:30 bir7 Exp $
0026  *      $Id: raw.c,v       0.8.4.12 1993/01/26 22:04:00 bir7 Exp $
0027  *      $Id: sock.c,v      0.8.4.6  1993/01/28 22:30:00 bir7 Exp $
0028  *      $Id: sock.h,v      0.8.4.7  1993/01/26 22:04:00 bir7 Exp $
0029  *      $Id: tcp.c,v       0.8.4.16 1993/01/26 22:04:00 bir7 Exp $
0030  *      $Id: tcp.h,v       0.8.4.7  1993/01/22 22:58:08 bir7 Exp $
0031  *      $Id: timer.c,v     0.8.4.8  1993/01/23 18:00:11 bir7 Exp $
0032  *      $Id: timer.h,v     0.8.4.2  1993/01/23 18:00:11 bir7 Exp $
0033  *      $Id: udp.c,v       0.8.4.12 1993/01/26 22:04:00 bir7 Exp $
0034  *      $Id: udp.h,v       0.8.4.1  1992/11/10 00:17:18 bir7 Exp $
0035  *      $Id: we.c,v        0.8.4.10 1993/01/23 18:00:11 bir7 Exp $
0036  *      $Id: wereg.h,v     0.8.4.1  1992/11/10 00:17:18 bir7 Exp $
0037  */
0038 #ifndef _LINUX_INET_H
0039 #define _LINUX_INET_H
0040 
0041 #include <linux/types.h>
0042 #include <net/net_namespace.h>
0043 #include <linux/socket.h>
0044 
0045 /*
0046  * These mimic similar macros defined in user-space for inet_ntop(3).
0047  * See /usr/include/netinet/in.h .
0048  */
0049 #define INET_ADDRSTRLEN     (16)
0050 #define INET6_ADDRSTRLEN    (48)
0051 
0052 extern __be32 in_aton(const char *str);
0053 extern int in4_pton(const char *src, int srclen, u8 *dst, int delim, const char **end);
0054 extern int in6_pton(const char *src, int srclen, u8 *dst, int delim, const char **end);
0055 
0056 extern int inet_pton_with_scope(struct net *net, unsigned short af,
0057         const char *src, const char *port, struct sockaddr_storage *addr);
0058 extern bool inet_addr_is_any(struct sockaddr *addr);
0059 
0060 #endif  /* _LINUX_INET_H */