Annotation of qemu/linux-user/socket.h, revision 1.1.1.2

1.1       root        1: 
                      2: #if defined(TARGET_MIPS)
                      3:        // MIPS special values for constants
                      4: 
                      5:        /*
                      6:         * For setsockopt(2)
                      7:         *
                      8:         * This defines are ABI conformant as far as Linux supports these ...
                      9:         */
                     10:        #define TARGET_SOL_SOCKET      0xffff
                     11: 
                     12:        #define TARGET_SO_DEBUG        0x0001  /* Record debugging information.  */
                     13:        #define TARGET_SO_REUSEADDR    0x0004  /* Allow reuse of local addresses.  */
                     14:        #define TARGET_SO_KEEPALIVE    0x0008  /* Keep connections alive and send
                     15:                                          SIGPIPE when they die.  */
                     16:        #define TARGET_SO_DONTROUTE    0x0010  /* Don't do local routing.  */
                     17:        #define TARGET_SO_BROADCAST    0x0020  /* Allow transmission of
                     18:                                          broadcast messages.  */
                     19:        #define TARGET_SO_LINGER       0x0080  /* Block on close of a reliable
                     20:                                          socket to transmit pending data.  */
                     21:        #define TARGET_SO_OOBINLINE 0x0100     /* Receive out-of-band data in-band.  */
                     22:        #if 0
                     23:        To add: #define TARGET_SO_REUSEPORT 0x0200     /* Allow local address and port reuse.  */
                     24:        #endif
                     25: 
                     26:        #define TARGET_SO_TYPE         0x1008  /* Compatible name for SO_STYLE.  */
                     27:        #define TARGET_SO_STYLE        SO_TYPE /* Synonym */
                     28:        #define TARGET_SO_ERROR        0x1007  /* get error status and clear */
                     29:        #define TARGET_SO_SNDBUF       0x1001  /* Send buffer size. */
                     30:        #define TARGET_SO_RCVBUF       0x1002  /* Receive buffer. */
                     31:        #define TARGET_SO_SNDLOWAT     0x1003  /* send low-water mark */
                     32:        #define TARGET_SO_RCVLOWAT     0x1004  /* receive low-water mark */
                     33:        #define TARGET_SO_SNDTIMEO     0x1005  /* send timeout */
                     34:        #define TARGET_SO_RCVTIMEO     0x1006  /* receive timeout */
                     35:        #define TARGET_SO_ACCEPTCONN   0x1009
                     36: 
                     37:        /* linux-specific, might as well be the same as on i386 */
                     38:        #define TARGET_SO_NO_CHECK     11
                     39:        #define TARGET_SO_PRIORITY     12
                     40:        #define TARGET_SO_BSDCOMPAT    14
                     41: 
                     42:        #define TARGET_SO_PASSCRED     17
                     43:        #define TARGET_SO_PEERCRED     18
                     44: 
                     45:        /* Security levels - as per NRL IPv6 - don't actually do anything */
                     46:        #define TARGET_SO_SECURITY_AUTHENTICATION              22
                     47:        #define TARGET_SO_SECURITY_ENCRYPTION_TRANSPORT        23
                     48:        #define TARGET_SO_SECURITY_ENCRYPTION_NETWORK          24
                     49: 
                     50:        #define TARGET_SO_BINDTODEVICE         25
                     51: 
                     52:        /* Socket filtering */
                     53:        #define TARGET_SO_ATTACH_FILTER        26
                     54:        #define TARGET_SO_DETACH_FILTER        27
                     55: 
                     56:        #define TARGET_SO_PEERNAME             28
                     57:        #define TARGET_SO_TIMESTAMP            29
                     58:        #define SCM_TIMESTAMP          SO_TIMESTAMP
                     59: 
                     60:        #define TARGET_SO_PEERSEC              30
                     61:        #define TARGET_SO_SNDBUFFORCE          31
                     62:        #define TARGET_SO_RCVBUFFORCE          33
                     63: 
                     64:        /** sock_type - Socket types
                     65:         *
                     66:         * Please notice that for binary compat reasons MIPS has to
                     67:         * override the enum sock_type in include/linux/net.h, so
                     68:         * we define ARCH_HAS_SOCKET_TYPES here.
                     69:         *
                     70:         * @SOCK_DGRAM - datagram (conn.less) socket
                     71:         * @SOCK_STREAM - stream (connection) socket
                     72:         * @SOCK_RAW - raw socket
                     73:         * @SOCK_RDM - reliably-delivered message
                     74:         * @SOCK_SEQPACKET - sequential packet socket
                     75:         * @SOCK_PACKET - linux specific way of getting packets at the dev level.
                     76:         *               For writing rarp and other similar things on the user level.
                     77:         */
                     78:        enum sock_type {
                     79:               TARGET_SOCK_DGRAM       = 1,
                     80:               TARGET_SOCK_STREAM      = 2,
                     81:               TARGET_SOCK_RAW = 3,
                     82:               TARGET_SOCK_RDM = 4,
                     83:               TARGET_SOCK_SEQPACKET   = 5,
                     84:               TARGET_SOCK_DCCP        = 6,
                     85:               TARGET_SOCK_PACKET      = 10,
                     86:        };
                     87: 
                     88:        #define TARGET_SOCK_MAX (SOCK_PACKET + 1)
                     89: 
                     90: #else
                     91: 
                     92:        /* For setsockopt(2) */
                     93:        #define TARGET_SOL_SOCKET      1
                     94: 
                     95:        #define TARGET_SO_DEBUG        1
                     96:        #define TARGET_SO_REUSEADDR    2
                     97:        #define TARGET_SO_TYPE         3
                     98:        #define TARGET_SO_ERROR        4
                     99:        #define TARGET_SO_DONTROUTE    5
                    100:        #define TARGET_SO_BROADCAST    6
                    101:        #define TARGET_SO_SNDBUF       7
                    102:        #define TARGET_SO_RCVBUF       8
                    103:        #define TARGET_SO_SNDBUFFORCE  32
                    104:        #define TARGET_SO_RCVBUFFORCE  33
                    105:        #define TARGET_SO_KEEPALIVE    9
                    106:        #define TARGET_SO_OOBINLINE    10
                    107:        #define TARGET_SO_NO_CHECK     11
                    108:        #define TARGET_SO_PRIORITY     12
                    109:        #define TARGET_SO_LINGER       13
                    110:        #define TARGET_SO_BSDCOMPAT    14
                    111:        /* To add :#define TARGET_SO_REUSEPORT 15 */
1.1.1.2 ! root      112: #if defined(TARGET_PPC)
        !           113:        #define TARGET_SO_RCVLOWAT     16
        !           114:        #define TARGET_SO_SNDLOWAT     17
        !           115:        #define TARGET_SO_RCVTIMEO     18
        !           116:        #define TARGET_SO_SNDTIMEO     19
        !           117:        #define TARGET_SO_PASSCRED     20
        !           118:        #define TARGET_SO_PEERCRED     21
        !           119: #else
1.1       root      120:        #define TARGET_SO_PASSCRED     16
                    121:        #define TARGET_SO_PEERCRED     17
                    122:        #define TARGET_SO_RCVLOWAT     18
                    123:        #define TARGET_SO_SNDLOWAT     19
                    124:        #define TARGET_SO_RCVTIMEO     20
                    125:        #define TARGET_SO_SNDTIMEO     21
1.1.1.2 ! root      126: #endif
1.1       root      127: 
                    128:        /* Security levels - as per NRL IPv6 - don't actually do anything */
                    129:        #define TARGET_SO_SECURITY_AUTHENTICATION              22
                    130:        #define TARGET_SO_SECURITY_ENCRYPTION_TRANSPORT        23
                    131:        #define TARGET_SO_SECURITY_ENCRYPTION_NETWORK          24
                    132: 
                    133:        #define TARGET_SO_BINDTODEVICE 25
                    134: 
                    135:        /* Socket filtering */
                    136:        #define TARGET_SO_ATTACH_FILTER        26
                    137:        #define TARGET_SO_DETACH_FILTER        27
                    138: 
                    139:        #define TARGET_SO_PEERNAME             28
                    140:        #define TARGET_SO_TIMESTAMP            29
                    141:        #define TARGET_SCM_TIMESTAMP           TARGET_SO_TIMESTAMP
                    142: 
                    143:        #define TARGET_SO_ACCEPTCONN           30
                    144: 
                    145:        #define TARGET_SO_PEERSEC              31
                    146: 
                    147: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.