dcerpc: remove use-after-free (found by clang).
[metze/wireshark/wip.git] / epan / aftypes.h
index d49cb10d5901d352e63d9f5bbfe408bef246978f..cfc384bb95f95c4763110b45cdfd0fcfc912852f 100644 (file)
@@ -1,10 +1,9 @@
 /* aftypes.h
- * AF_ values on various flavors of BSD
+ * AF_ values on various OSes; they're used in some network protocols, as
+ * well as in BSD DLT_NULL and DLT_LOOP headers.
  *
- * $Id$
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@ethereal.com>
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
  *
  * This file created and by Mike Hall <mlh@io.com>
  * Copyright 1998
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
+#ifndef __AFTYPES_H__
+#define __AFTYPES_H__
+
+#include <epan/value_string.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+#define COMMON_AF_UNSPEC       0
+/* Pretty much everybody uses the same value for AF_INET. */
+#define COMMON_AF_INET         2
+
 /* BSD AF_ values. */
 #define BSD_AF_INET            2
 #define BSD_AF_ISO             7
 #define BSD_AF_APPLETALK       16
 #define BSD_AF_IPX             23
-#define BSD_AF_INET6_BSD       24      /* OpenBSD (and probably NetBSD), BSD/OS */
-#define BSD_AF_INET6_FREEBSD   28
-#define BSD_AF_INET6_DARWIN    30
+#define BSD_AF_INET6_BSD       24      /* NetBSD, OpenBSD, BSD/OS */
+#define BSD_AF_INET6_FREEBSD   28      /* FreeBSD, DragonFly BSD */
+#define BSD_AF_INET6_DARWIN    30      /* macOS, iOS, anything else Darwin-based */
+
+/* Linux AF_ values. */
+#define LINUX_AF_UNSPEC                 0
+#define LINUX_AF_LOCAL          1
+#define LINUX_AF_INET           2
+#define LINUX_AF_AX25           3
+#define LINUX_AF_IPX            4
+#define LINUX_AF_APPLETALK      5
+#define LINUX_AF_NETROM                 6
+#define LINUX_AF_BRIDGE                 7
+#define LINUX_AF_ATMPVC                 8
+#define LINUX_AF_X25            9
+#define LINUX_AF_INET6         10
+#define LINUX_AF_ROSE          11
+#define LINUX_AF_DECnet                12
+#define LINUX_AF_NETBEUI       13
+#define LINUX_AF_SECURITY      14
+#define LINUX_AF_KEY           15
+#define LINUX_AF_NETLINK       16
+#define LINUX_AF_PACKET                17
+#define LINUX_AF_ASH           18
+#define LINUX_AF_ECONET                19
+#define LINUX_AF_ATMSVC                20
+#define LINUX_AF_RDS           21
+#define LINUX_AF_SNA           22
+#define LINUX_AF_IRDA          23
+#define LINUX_AF_PPPOX         24
+#define LINUX_AF_WANPIPE       25
+#define LINUX_AF_LLC           26
+#define LINUX_AF_CAN           29
+#define LINUX_AF_TIPC          30
+#define LINUX_AF_BLUETOOTH     31
+#define LINUX_AF_IUCV          32
+#define LINUX_AF_RXRPC         33
+#define LINUX_AF_ISDN          34
+#define LINUX_AF_PHONET                35
+#define LINUX_AF_IEEE802154    36
+#define LINUX_AF_CAIF          37
+#define LINUX_AF_ALG           38
+#define LINUX_AF_NFC           39
+
+extern value_string_ext linux_af_vals_ext;
+
+/* Solaris AF_ values. */
+#define SOLARIS_AF_INET                2
+#define SOLARIS_AF_INET6       26
+
+/* Winsock AF_ values. */
+
+#define WINSOCK_AF_UNSPEC      0
+#define WINSOCK_AF_UNIX                1
+#define WINSOCK_AF_INET                2
+#define WINSOCK_AF_IMPLINK     3
+#define WINSOCK_AF_PUP         4
+#define WINSOCK_AF_CHAOS       5
+#define WINSOCK_AF_IPX         6
+#define WINSOCK_AF_NS          6
+#define WINSOCK_AF_ISO         7
+#define WINSOCK_AF_OSI         WINSOCK_AF_ISO
+#define WINSOCK_AF_ECMA                8
+#define WINSOCK_AF_DATAKIT     9
+#define WINSOCK_AF_CCITT       10
+#define WINSOCK_AF_SNA         11
+#define WINSOCK_AF_DECnet      12
+#define WINSOCK_AF_DLI         13
+#define WINSOCK_AF_LAT         14
+#define WINSOCK_AF_HYLINK      15
+#define WINSOCK_AF_APPLETALK   16
+#define WINSOCK_AF_NETBIOS     17
+#define WINSOCK_AF_VOICEVIEW   18
+#define WINSOCK_AF_FIREFOX     19
+#define WINSOCK_AF_UNKNOWN1    20
+#define WINSOCK_AF_BAN         21
+#define WINSOCK_AF_ATM         22
+#define WINSOCK_AF_INET6       23
+#define WINSOCK_AF_BTH         32
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* aftypes.h */