#lib/libip4tc.la
lib/libip4tc.so
lib/libip4tc.so.0
-lib/libip4tc.so.0.0.0
+lib/libip4tc.so.0.1.0
#lib/libip6tc.la
lib/libip6tc.so
lib/libip6tc.so.0
-lib/libip6tc.so.0.0.0
-#lib/libipq.a
+lib/libip6tc.so.0.1.0
+#lib/libipq.la
+lib/libipq.so
+lib/libipq.so.0
+lib/libipq.so.0.0.0
#lib/libiptc.la
lib/libiptc.so
lib/libiptc.so.0
lib/libiptc.so.0.0.0
#lib/libxtables.la
lib/libxtables.so
-lib/libxtables.so.4
-lib/libxtables.so.4.0.0
+lib/libxtables.so.7
+lib/libxtables.so.7.0.0
#lib/pkgconfig
+#lib/pkgconfig/libip4tc.pc
+#lib/pkgconfig/libip6tc.pc
+#lib/pkgconfig/libipq.pc
#lib/pkgconfig/libiptc.pc
#lib/pkgconfig/xtables.pc
lib/xtables
#lib/xtables/libipt_REDIRECT.so
#lib/xtables/libipt_REJECT.so
#lib/xtables/libipt_SAME.so
-#lib/xtables/libipt_SET.so
#lib/xtables/libipt_SNAT.so
#lib/xtables/libipt_TTL.so
#lib/xtables/libipt_ULOG.so
-#lib/xtables/libipt_addrtype.so
#lib/xtables/libipt_ah.so
-#lib/xtables/libipt_ecn.so
#lib/xtables/libipt_icmp.so
#lib/xtables/libipt_ipp2p.so
#lib/xtables/libipt_realm.so
-#lib/xtables/libipt_set.so
#lib/xtables/libipt_ttl.so
#lib/xtables/libipt_unclean.so
+#lib/xtables/libxt_AUDIT.so
+#lib/xtables/libxt_CHECKSUM.so
#lib/xtables/libxt_CLASSIFY.so
#lib/xtables/libxt_CONNMARK.so
#lib/xtables/libxt_CONNSECMARK.so
+#lib/xtables/libxt_CT.so
#lib/xtables/libxt_DSCP.so
+#lib/xtables/libxt_IDLETIMER.so
#lib/xtables/libxt_IMQ.so
+#lib/xtables/libxt_LED.so
#lib/xtables/libxt_MARK.so
#lib/xtables/libxt_NFLOG.so
#lib/xtables/libxt_NFQUEUE.so
#lib/xtables/libxt_NOTRACK.so
#lib/xtables/libxt_RATEEST.so
#lib/xtables/libxt_SECMARK.so
+#lib/xtables/libxt_SET.so
#lib/xtables/libxt_TCPMSS.so
#lib/xtables/libxt_TCPOPTSTRIP.so
+#lib/xtables/libxt_TEE.so
#lib/xtables/libxt_TOS.so
#lib/xtables/libxt_TPROXY.so
#lib/xtables/libxt_TRACE.so
+#lib/xtables/libxt_addrtype.so
#lib/xtables/libxt_cluster.so
#lib/xtables/libxt_comment.so
#lib/xtables/libxt_connbytes.so
#lib/xtables/libxt_connlimit.so
#lib/xtables/libxt_connmark.so
#lib/xtables/libxt_conntrack.so
+#lib/xtables/libxt_cpu.so
+#lib/xtables/libxt_dccp.so
+#lib/xtables/libxt_devgroup.so
#lib/xtables/libxt_dscp.so
+#lib/xtables/libxt_ecn.so
#lib/xtables/libxt_esp.so
#lib/xtables/libxt_hashlimit.so
#lib/xtables/libxt_helper.so
#lib/xtables/libxt_iprange.so
+#lib/xtables/libxt_ipvs.so
#lib/xtables/libxt_layer7.so
#lib/xtables/libxt_length.so
#lib/xtables/libxt_limit.so
#lib/xtables/libxt_mac.so
#lib/xtables/libxt_mark.so
#lib/xtables/libxt_multiport.so
+#lib/xtables/libxt_nfacct.so
#lib/xtables/libxt_osf.so
#lib/xtables/libxt_owner.so
#lib/xtables/libxt_physdev.so
#lib/xtables/libxt_quota.so
#lib/xtables/libxt_rateest.so
#lib/xtables/libxt_recent.so
+#lib/xtables/libxt_rpfilter.so
#lib/xtables/libxt_sctp.so
+#lib/xtables/libxt_set.so
#lib/xtables/libxt_socket.so
#lib/xtables/libxt_standard.so
#lib/xtables/libxt_state.so
#lib/xtables/libxt_tos.so
#lib/xtables/libxt_u32.so
#lib/xtables/libxt_udp.so
-#sbin/ip6tables
-#sbin/ip6tables-multi
-#sbin/ip6tables-restore
-#sbin/ip6tables-save
+sbin/ip6tables
+sbin/ip6tables-restore
+sbin/ip6tables-save
sbin/iptables
-sbin/iptables-multi
-#sbin/iptables-restore
-#sbin/iptables-save
-#sbin/iptables-xml
-#usr/include/asm-generic
-#usr/include/asm-generic/errno-base.h
-#usr/include/asm-generic/errno.h
+sbin/iptables-restore
+sbin/iptables-save
+sbin/iptables-xml
+sbin/xtables-multi
#usr/include/iptables
#usr/include/iptables.h
#usr/include/iptables/internal.h
#usr/include/libiptc/libip6tc.h
#usr/include/libiptc/libiptc.h
#usr/include/libiptc/libxtc.h
+#usr/include/libiptc/xtcshared.h
#usr/include/libipulog
#usr/include/libipulog/libipulog.h
#usr/include/libnetfilter_queue
#usr/include/libnfnetlink/libnfnetlink.h
#usr/include/libnfnetlink/linux_nfnetlink.h
#usr/include/libnfnetlink/linux_nfnetlink_compat.h
-#usr/include/linux/netfilter
#usr/include/linux/netfilter/Kbuild
#usr/include/linux/netfilter/nf_conntrack_amanda.h
-#usr/include/linux/netfilter/nf_conntrack_common.h
#usr/include/linux/netfilter/nf_conntrack_dccp.h
-#usr/include/linux/netfilter/nf_conntrack_ftp.h
#usr/include/linux/netfilter/nf_conntrack_h323.h
#usr/include/linux/netfilter/nf_conntrack_h323_asn1.h
#usr/include/linux/netfilter/nf_conntrack_h323_types.h
#usr/include/linux/netfilter/nf_conntrack_pptp.h
#usr/include/linux/netfilter/nf_conntrack_proto_gre.h
#usr/include/linux/netfilter/nf_conntrack_sane.h
-#usr/include/linux/netfilter/nf_conntrack_sctp.h
#usr/include/linux/netfilter/nf_conntrack_sip.h
-#usr/include/linux/netfilter/nf_conntrack_tcp.h
#usr/include/linux/netfilter/nf_conntrack_tftp.h
-#usr/include/linux/netfilter/nf_conntrack_tuple_common.h
-#usr/include/linux/netfilter/nfnetlink.h
-#usr/include/linux/netfilter/nfnetlink_compat.h
-#usr/include/linux/netfilter/nfnetlink_conntrack.h
-#usr/include/linux/netfilter/nfnetlink_log.h
-#usr/include/linux/netfilter/nfnetlink_queue.h
-#usr/include/linux/netfilter/x_tables.h
-#usr/include/linux/netfilter/xt_CLASSIFY.h
-#usr/include/linux/netfilter/xt_CONNMARK.h
-#usr/include/linux/netfilter/xt_CONNSECMARK.h
-#usr/include/linux/netfilter/xt_DSCP.h
#usr/include/linux/netfilter/xt_IMQ.h
-#usr/include/linux/netfilter/xt_LED.h
-#usr/include/linux/netfilter/xt_MARK.h
-#usr/include/linux/netfilter/xt_NFLOG.h
-#usr/include/linux/netfilter/xt_NFQUEUE.h
-#usr/include/linux/netfilter/xt_RATEEST.h
-#usr/include/linux/netfilter/xt_SECMARK.h
-#usr/include/linux/netfilter/xt_TCPMSS.h
-#usr/include/linux/netfilter/xt_TCPOPTSTRIP.h
-#usr/include/linux/netfilter/xt_TPROXY.h
-#usr/include/linux/netfilter/xt_cluster.h
-#usr/include/linux/netfilter/xt_comment.h
-#usr/include/linux/netfilter/xt_connbytes.h
-#usr/include/linux/netfilter/xt_connlimit.h
-#usr/include/linux/netfilter/xt_connmark.h
-#usr/include/linux/netfilter/xt_conntrack.h
-#usr/include/linux/netfilter/xt_dccp.h
-#usr/include/linux/netfilter/xt_dscp.h
-#usr/include/linux/netfilter/xt_esp.h
-#usr/include/linux/netfilter/xt_hashlimit.h
-#usr/include/linux/netfilter/xt_helper.h
-#usr/include/linux/netfilter/xt_iprange.h
#usr/include/linux/netfilter/xt_layer7.h
-#usr/include/linux/netfilter/xt_length.h
-#usr/include/linux/netfilter/xt_limit.h
-#usr/include/linux/netfilter/xt_mac.h
-#usr/include/linux/netfilter/xt_mark.h
-#usr/include/linux/netfilter/xt_multiport.h
-#usr/include/linux/netfilter/xt_osf.h
-#usr/include/linux/netfilter/xt_owner.h
-#usr/include/linux/netfilter/xt_physdev.h
-#usr/include/linux/netfilter/xt_pkttype.h
-#usr/include/linux/netfilter/xt_policy.h
-#usr/include/linux/netfilter/xt_quota.h
-#usr/include/linux/netfilter/xt_rateest.h
-#usr/include/linux/netfilter/xt_realm.h
-#usr/include/linux/netfilter/xt_recent.h
-#usr/include/linux/netfilter/xt_sctp.h
#usr/include/linux/netfilter/xt_socket.h
-#usr/include/linux/netfilter/xt_state.h
-#usr/include/linux/netfilter/xt_statistic.h
-#usr/include/linux/netfilter/xt_string.h
-#usr/include/linux/netfilter/xt_tcpmss.h
-#usr/include/linux/netfilter/xt_tcpudp.h
-#usr/include/linux/netfilter/xt_time.h
-#usr/include/linux/netfilter/xt_u32.h
#usr/include/net/netfilter
#usr/include/net/netfilter/nf_conntrack_tuple.h
#usr/include/net/netfilter/nf_nat.h
usr/lib/libnfnetlink.so.0.2.0
#usr/lib/pkgconfig/libnetfilter_queue.pc
#usr/lib/pkgconfig/libnfnetlink.pc
+#usr/share/man/man1/iptables-xml.1
#usr/share/man/man3/ipq_create_handle.3
#usr/share/man/man3/ipq_destroy_handle.3
#usr/share/man/man3/ipq_errstr.3
#usr/share/man/man8/ip6tables.8
#usr/share/man/man8/iptables-restore.8
#usr/share/man/man8/iptables-save.8
-#usr/share/man/man8/iptables-xml.8
#usr/share/man/man8/iptables.8
include Config
-VER = 1.4.6
+VER = 1.4.14
THISAPP = iptables-$(VER)
DL_FILE = $(THISAPP).tar.bz2
libnfnetlink-1.0.0.tar.bz2 = $(URL_IPFIRE)/libnfnetlink-1.0.0.tar.bz2
libnetfilter_queue-0.0.17.tar.bz2 = $(URL_IPFIRE)/libnetfilter_queue-0.0.17.tar.bz2
-$(DL_FILE)_MD5 = c67cf30e281a924def6426be0973df56
+$(DL_FILE)_MD5 = 5ab24ad683f76689cfe7e0c73f44855d
netfilter-layer7-v2.22.tar.gz_MD5 = 98dff8a3d5a31885b73341633f69501f
libnfnetlink-1.0.0.tar.bz2_MD5 = 016fdec8389242615024c529acc1adb8
libnetfilter_queue-0.0.17.tar.bz2_MD5 = 2cde35e678ead3a8f9eb896bf807a159
./extensions/
# ipp2p 0.8.2-pomng
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/iptables-1.4.6-ipp2p-0.8.2-pomng.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/iptables-1.4.14-ipp2p-0.8.2-ipfire.patch
# imq
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/iptables-1.4.6-imq_test1.patch
- chmod +x $(DIR_APP)/extensions/.IMQ-test*
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/iptables-1.4.12-IMQ-test4.diff
+# chmod +x $(DIR_APP)/extensions/.IMQ-test*
cd $(DIR_APP) && ./configure --prefix=/usr --with-ksource=/usr/src/linux \
--libdir=/lib --includedir=/usr/include --enable-libipq \
-diff -Naurw iptables-1.4.1/extensions/.IMQ-testx iptables-1.4.1.imq/extensions/.IMQ-testx
---- iptables-1.4.1/extensions/.IMQ-testx 1969-12-31 21:00:00.000000000 -0300
-+++ iptables-1.4.1.imq/extensions/.IMQ-testx 2008-06-24 22:20:06.000000000 -0300
-@@ -0,0 +1,3 @@
-+#!/bin/sh
-+# True if IMQ target patch is applied.
-+[ -f $KERNEL_DIR/include/linux/netfilter/xt_IMQ.h ] && echo IMQ
-diff -Naurw iptables-1.4.1/extensions/libxt_IMQ.c iptables-1.4.1.imq/extensions/libxt_IMQ.c
---- iptables-1.4.1/extensions/libxt_IMQ.c 1969-12-31 21:00:00.000000000 -0300
-+++ iptables-1.4.1.imq/extensions/libxt_IMQ.c 2008-06-24 22:31:02.000000000 -0300
-@@ -0,0 +1,103 @@
+diff -Naur iptables-1.4.12.1/extensions/libxt_IMQ.c iptables-1.4.12.1-imq/extensions/libxt_IMQ.c
+--- iptables-1.4.12.1/extensions/libxt_IMQ.c 1970-01-01 02:00:00.000000000 +0200
++++ iptables-1.4.12.1-imq/extensions/libxt_IMQ.c 2011-09-30 13:53:21.000000000 +0300
+@@ -0,0 +1,105 @@
+/* Shared library add-on to iptables to add IMQ target support. */
+#include <stdio.h>
+#include <string.h>
+
+ switch(c) {
+ case '1':
-+ if (xtables_check_inverse(optarg, &invert, NULL, 0, argv))
++/* if (xtables_check_inverse(optarg, &invert, NULL, 0, argv))
+ xtables_error(PARAMETER_PROBLEM,
-+ "Unexpected `!' for --todev");
++ "Unexpected `!' after --todev");
++*/
+ mr->todev=atoi(optarg);
+ break;
++
+ default:
+ return 0;
+ }
+{
+ struct xt_imq_info *mr = (struct xt_imq_info*)target->data;
+
-+ printf("--todev %u", mr->todev);
++ printf(" --todev %u", mr->todev);
+}
+
+static struct xtables_target imq_target = {
+ xtables_register_target(&imq_target);
+ xtables_register_target(&imq_target6);
+}
---- iptables-1.4.1.1/include/linux/netfilter/xt_IMQ.h 1970-01-01 02:00:00.000000000 +0200
-+++ iptables-1.4.1.1.new/include/linux/netfilter/xt_IMQ.h 2008-08-05 00:41:28.000000000 +0300
+diff -Naur iptables-1.4.12.1/extensions/libxt_IMQ.man iptables-1.4.12.1-imq/extensions/libxt_IMQ.man
+--- iptables-1.4.12.1/extensions/libxt_IMQ.man 1970-01-01 02:00:00.000000000 +0200
++++ iptables-1.4.12.1-imq/extensions/libxt_IMQ.man 2011-09-30 13:53:21.000000000 +0300
+@@ -0,0 +1,15 @@
++This target is used to redirect the traffic to the IMQ driver and you can apply
++QoS rules like HTB or CBQ.
++For example you can select only traffic comming from a specific interface or
++is going out on a specific interface.
++Also it permits to capture the traffic BEFORE NAT in the case of outgoing traffic
++or AFTER NAT in the case of incomming traffic.
++.TP
++\fB\-\-to\-dev\fP \fIvalue\fP
++Set the IMQ interface where to send this traffic
++.TP
++Example:
++.TP
++Redirect incomming traffic from interface eth0 to imq0 and outgoing traffic to imq1:
++iptables \-t mangle \-A FORWARD \-i eth0 \-j IMQ \-\-to\-dev 0
++iptables \-t mangle \-A FORWARD \-o eth0 \-j IMQ \-\-to\-dev 1
+diff -Naur iptables-1.4.12.1/include/linux/netfilter/xt_IMQ.h iptables-1.4.12.1-imq/include/linux/netfilter/xt_IMQ.h
+--- iptables-1.4.12.1/include/linux/netfilter/xt_IMQ.h 1970-01-01 02:00:00.000000000 +0200
++++ iptables-1.4.12.1-imq/include/linux/netfilter/xt_IMQ.h 2011-09-30 13:53:21.000000000 +0300
@@ -0,0 +1,9 @@
+#ifndef _XT_IMQ_H
+#define _XT_IMQ_H
+ .next = NULL,
+ .name = "ipp2p",
+ .version = XTABLES_VERSION,
-+ .size = IPT_ALIGN(sizeof(struct ipt_p2p_info)),
-+ .userspacesize = IPT_ALIGN(sizeof(struct ipt_p2p_info)),
++ .size = XT_ALIGN(sizeof(struct ipt_p2p_info)),
++ .userspacesize = XT_ALIGN(sizeof(struct ipt_p2p_info)),
+ .help = &help,
+ .init = &init,
+ .parse = &parse,
+++ /dev/null
-diff -Naur include.org/asm/errno.h include/asm/errno.h
---- include.org/asm/errno.h 2010-02-12 18:21:40.000000000 +0100
-+++ include/asm/errno.h 2010-02-12 18:19:41.000000000 +0100
-@@ -5,4 +5,8 @@
- #include <linux/errno.h>
- #endif
-
-+#ifndef _ASM_GENERIC_ERRNO_H
-+ #include <asm-generic/errno.h>
-+#endif
-+
- #endif
-diff -Naur include.org/asm-generic/errno-base.h include/asm-generic/errno-base.h
---- include.org/asm-generic/errno-base.h 1970-01-01 01:00:00.000000000 +0100
-+++ include/asm-generic/errno-base.h 2010-02-09 13:57:19.000000000 +0100
-@@ -0,0 +1,39 @@
-+#ifndef _ASM_GENERIC_ERRNO_BASE_H
-+#define _ASM_GENERIC_ERRNO_BASE_H
-+
-+#define EPERM 1 /* Operation not permitted */
-+#define ENOENT 2 /* No such file or directory */
-+#define ESRCH 3 /* No such process */
-+#define EINTR 4 /* Interrupted system call */
-+#define EIO 5 /* I/O error */
-+#define ENXIO 6 /* No such device or address */
-+#define E2BIG 7 /* Argument list too long */
-+#define ENOEXEC 8 /* Exec format error */
-+#define EBADF 9 /* Bad file number */
-+#define ECHILD 10 /* No child processes */
-+#define EAGAIN 11 /* Try again */
-+#define ENOMEM 12 /* Out of memory */
-+#define EACCES 13 /* Permission denied */
-+#define EFAULT 14 /* Bad address */
-+#define ENOTBLK 15 /* Block device required */
-+#define EBUSY 16 /* Device or resource busy */
-+#define EEXIST 17 /* File exists */
-+#define EXDEV 18 /* Cross-device link */
-+#define ENODEV 19 /* No such device */
-+#define ENOTDIR 20 /* Not a directory */
-+#define EISDIR 21 /* Is a directory */
-+#define EINVAL 22 /* Invalid argument */
-+#define ENFILE 23 /* File table overflow */
-+#define EMFILE 24 /* Too many open files */
-+#define ENOTTY 25 /* Not a typewriter */
-+#define ETXTBSY 26 /* Text file busy */
-+#define EFBIG 27 /* File too large */
-+#define ENOSPC 28 /* No space left on device */
-+#define ESPIPE 29 /* Illegal seek */
-+#define EROFS 30 /* Read-only file system */
-+#define EMLINK 31 /* Too many links */
-+#define EPIPE 32 /* Broken pipe */
-+#define EDOM 33 /* Math argument out of domain of func */
-+#define ERANGE 34 /* Math result not representable */
-+
-+#endif
-diff -Naur include.org/asm-generic/errno.h include/asm-generic/errno.h
---- include.org/asm-generic/errno.h 1970-01-01 01:00:00.000000000 +0100
-+++ include/asm-generic/errno.h 2010-02-09 13:57:19.000000000 +0100
-@@ -0,0 +1,111 @@
-+#ifndef _ASM_GENERIC_ERRNO_H
-+#define _ASM_GENERIC_ERRNO_H
-+
-+#include <asm-generic/errno-base.h>
-+
-+#define EDEADLK 35 /* Resource deadlock would occur */
-+#define ENAMETOOLONG 36 /* File name too long */
-+#define ENOLCK 37 /* No record locks available */
-+#define ENOSYS 38 /* Function not implemented */
-+#define ENOTEMPTY 39 /* Directory not empty */
-+#define ELOOP 40 /* Too many symbolic links encountered */
-+#define EWOULDBLOCK EAGAIN /* Operation would block */
-+#define ENOMSG 42 /* No message of desired type */
-+#define EIDRM 43 /* Identifier removed */
-+#define ECHRNG 44 /* Channel number out of range */
-+#define EL2NSYNC 45 /* Level 2 not synchronized */
-+#define EL3HLT 46 /* Level 3 halted */
-+#define EL3RST 47 /* Level 3 reset */
-+#define ELNRNG 48 /* Link number out of range */
-+#define EUNATCH 49 /* Protocol driver not attached */
-+#define ENOCSI 50 /* No CSI structure available */
-+#define EL2HLT 51 /* Level 2 halted */
-+#define EBADE 52 /* Invalid exchange */
-+#define EBADR 53 /* Invalid request descriptor */
-+#define EXFULL 54 /* Exchange full */
-+#define ENOANO 55 /* No anode */
-+#define EBADRQC 56 /* Invalid request code */
-+#define EBADSLT 57 /* Invalid slot */
-+
-+#define EDEADLOCK EDEADLK
-+
-+#define EBFONT 59 /* Bad font file format */
-+#define ENOSTR 60 /* Device not a stream */
-+#define ENODATA 61 /* No data available */
-+#define ETIME 62 /* Timer expired */
-+#define ENOSR 63 /* Out of streams resources */
-+#define ENONET 64 /* Machine is not on the network */
-+#define ENOPKG 65 /* Package not installed */
-+#define EREMOTE 66 /* Object is remote */
-+#define ENOLINK 67 /* Link has been severed */
-+#define EADV 68 /* Advertise error */
-+#define ESRMNT 69 /* Srmount error */
-+#define ECOMM 70 /* Communication error on send */
-+#define EPROTO 71 /* Protocol error */
-+#define EMULTIHOP 72 /* Multihop attempted */
-+#define EDOTDOT 73 /* RFS specific error */
-+#define EBADMSG 74 /* Not a data message */
-+#define EOVERFLOW 75 /* Value too large for defined data type */
-+#define ENOTUNIQ 76 /* Name not unique on network */
-+#define EBADFD 77 /* File descriptor in bad state */
-+#define EREMCHG 78 /* Remote address changed */
-+#define ELIBACC 79 /* Can not access a needed shared library */
-+#define ELIBBAD 80 /* Accessing a corrupted shared library */
-+#define ELIBSCN 81 /* .lib section in a.out corrupted */
-+#define ELIBMAX 82 /* Attempting to link in too many shared libraries */
-+#define ELIBEXEC 83 /* Cannot exec a shared library directly */
-+#define EILSEQ 84 /* Illegal byte sequence */
-+#define ERESTART 85 /* Interrupted system call should be restarted */
-+#define ESTRPIPE 86 /* Streams pipe error */
-+#define EUSERS 87 /* Too many users */
-+#define ENOTSOCK 88 /* Socket operation on non-socket */
-+#define EDESTADDRREQ 89 /* Destination address required */
-+#define EMSGSIZE 90 /* Message too long */
-+#define EPROTOTYPE 91 /* Protocol wrong type for socket */
-+#define ENOPROTOOPT 92 /* Protocol not available */
-+#define EPROTONOSUPPORT 93 /* Protocol not supported */
-+#define ESOCKTNOSUPPORT 94 /* Socket type not supported */
-+#define EOPNOTSUPP 95 /* Operation not supported on transport endpoint */
-+#define EPFNOSUPPORT 96 /* Protocol family not supported */
-+#define EAFNOSUPPORT 97 /* Address family not supported by protocol */
-+#define EADDRINUSE 98 /* Address already in use */
-+#define EADDRNOTAVAIL 99 /* Cannot assign requested address */
-+#define ENETDOWN 100 /* Network is down */
-+#define ENETUNREACH 101 /* Network is unreachable */
-+#define ENETRESET 102 /* Network dropped connection because of reset */
-+#define ECONNABORTED 103 /* Software caused connection abort */
-+#define ECONNRESET 104 /* Connection reset by peer */
-+#define ENOBUFS 105 /* No buffer space available */
-+#define EISCONN 106 /* Transport endpoint is already connected */
-+#define ENOTCONN 107 /* Transport endpoint is not connected */
-+#define ESHUTDOWN 108 /* Cannot send after transport endpoint shutdown */
-+#define ETOOMANYREFS 109 /* Too many references: cannot splice */
-+#define ETIMEDOUT 110 /* Connection timed out */
-+#define ECONNREFUSED 111 /* Connection refused */
-+#define EHOSTDOWN 112 /* Host is down */
-+#define EHOSTUNREACH 113 /* No route to host */
-+#define EALREADY 114 /* Operation already in progress */
-+#define EINPROGRESS 115 /* Operation now in progress */
-+#define ESTALE 116 /* Stale NFS file handle */
-+#define EUCLEAN 117 /* Structure needs cleaning */
-+#define ENOTNAM 118 /* Not a XENIX named type file */
-+#define ENAVAIL 119 /* No XENIX semaphores available */
-+#define EISNAM 120 /* Is a named type file */
-+#define EREMOTEIO 121 /* Remote I/O error */
-+#define EDQUOT 122 /* Quota exceeded */
-+
-+#define ENOMEDIUM 123 /* No medium found */
-+#define EMEDIUMTYPE 124 /* Wrong medium type */
-+#define ECANCELED 125 /* Operation Canceled */
-+#define ENOKEY 126 /* Required key not available */
-+#define EKEYEXPIRED 127 /* Key has expired */
-+#define EKEYREVOKED 128 /* Key has been revoked */
-+#define EKEYREJECTED 129 /* Key was rejected by service */
-+
-+/* for robust mutexes */
-+#define EOWNERDEAD 130 /* Owner died */
-+#define ENOTRECOVERABLE 131 /* State not recoverable */
-+
-+#define ERFKILL 132 /* Operation not possible due to RF-kill */
-+
-+#endif