Skip to content

Commit 648c186

Browse files
author
Yorick Peterse
committedOct 30, 2015
Updated list of Socket constants to generate
The new list is based on the constants available as of MRI 2.2.3.
1 parent 2920c9e commit 648c186

File tree

1 file changed

+98
-225
lines changed

1 file changed

+98
-225
lines changed
 

‎rakelib/platform.rake

+98-225
Original file line numberDiff line numberDiff line change
@@ -258,230 +258,105 @@ file 'runtime/platform.conf' => deps do |task|
258258

259259
Rubinius::FFI::Generators::Constants.new 'rbx.platform.socket' do |cg|
260260
cg.include 'sys/types.h'
261+
261262
if BUILD_CONFIG[:windows]
262263
cg.include "winsock2.h"
263264
else
264265
cg.include 'sys/socket.h'
265266
cg.include 'netdb.h'
267+
cg.include 'netinet/in_systm.h'
266268
cg.include 'netinet/tcp.h'
269+
cg.include 'netinet/udp.h'
267270
cg.include 'netinet/in.h'
271+
cg.include 'net/if.h'
268272
end
269273

270274
socket_constants = %w[
271275
AF_APPLETALK
272-
AF_ATM
273276
AF_AX25
274-
AF_CCITT
275-
AF_CHAOS
276-
AF_CNT
277-
AF_COIP
278-
AF_DATAKIT
279-
AF_DEC
280-
AF_DLI
281-
AF_E164
282-
AF_ECMA
283-
AF_HYLINK
284-
AF_IMPLINK
285277
AF_INET
286278
AF_INET6
287279
AF_IPX
288280
AF_ISDN
289-
AF_ISO
290-
AF_LAT
291-
AF_LINK
292281
AF_LOCAL
293282
AF_MAX
294-
AF_NATM
295-
AF_NDRV
296-
AF_NETBIOS
297-
AF_NETGRAPH
298-
AF_NS
299-
AF_OSI
300283
AF_PACKET
301-
AF_PPP
302-
AF_PUP
303284
AF_ROUTE
304-
AF_SIP
305285
AF_SNA
306-
AF_SYSTEM
307286
AF_UNIX
308287
AF_UNSPEC
309-
310288
AI_ADDRCONFIG
311289
AI_ALL
312290
AI_CANONNAME
313-
AI_DEFAULT
314-
AI_MASK
315291
AI_NUMERICHOST
316292
AI_NUMERICSERV
317293
AI_PASSIVE
318294
AI_V4MAPPED
319-
AI_V4MAPPED_CFG
320-
321295
EAI_ADDRFAMILY
322296
EAI_AGAIN
323297
EAI_BADFLAGS
324-
EAI_BADHINTS
325298
EAI_FAIL
326299
EAI_FAMILY
327-
EAI_MAX
328300
EAI_MEMORY
329301
EAI_NODATA
330302
EAI_NONAME
331303
EAI_OVERFLOW
332-
EAI_PROTOCOL
333304
EAI_SERVICE
334305
EAI_SOCKTYPE
335306
EAI_SYSTEM
336-
337-
IF_NAMESIZE
338-
339-
IFF_802_1Q_VLAN
307+
FNM_CASEFOLD
308+
FNM_DOTMATCH
309+
FNM_EXTGLOB
310+
FNM_NOESCAPE
311+
FNM_PATHNAME
312+
FNM_SYSCASE
340313
IFF_ALLMULTI
341-
IFF_ALTPHYS
342314
IFF_AUTOMEDIA
343-
IFF_BONDING
344-
IFF_BRIDGE_PORT
345315
IFF_BROADCAST
346-
IFF_CANTCHANGE
347-
IFF_CANTCONFIG
348316
IFF_DEBUG
349-
IFF_DISABLE_NETPOLL
350-
IFF_DONT_BRIDGE
351-
IFF_DORMANT
352-
IFF_DRV_OACTIVE
353-
IFF_DRV_RUNNING
354-
IFF_DYING
355317
IFF_DYNAMIC
356-
IFF_EBRIDGE
357-
IFF_ECHO
358-
IFF_ISATAP
359-
IFF_LINK0
360-
IFF_LINK1
361-
IFF_LINK2
362-
IFF_LIVE_ADDR_CHANGE
363318
IFF_LOOPBACK
364-
IFF_LOWER_UP
365-
IFF_MACVLAN_PORT
366319
IFF_MASTER
367-
IFF_MASTER_8023AD
368-
IFF_MASTER_ALB
369-
IFF_MASTER_ARPMON
370-
IFF_MONITOR
371320
IFF_MULTICAST
372321
IFF_NOARP
373322
IFF_NOTRAILERS
374-
IFF_OACTIVE
375-
IFF_OVS_DATAPATH
376323
IFF_POINTOPOINT
377324
IFF_PORTSEL
378-
IFF_PPROMISC
379325
IFF_PROMISC
380-
IFF_RENAMING
381-
IFF_ROUTE
382326
IFF_RUNNING
383-
IFF_SIMPLEX
384327
IFF_SLAVE
385-
IFF_SLAVE_INACTIVE
386-
IFF_SLAVE_NEEDARP
387-
IFF_SMART
388-
IFF_STATICARP
389-
IFF_SUPP_NOFCS
390-
IFF_TEAM_PORT
391-
IFF_TX_SKB_SHARING
392-
IFF_UNICAST_FLT
393328
IFF_UP
394-
IFF_VOLATILE
395-
IFF_WAN_HDLC
396-
IFF_XMIT_DST_RELEASE
397-
398-
IFNAMSIZ
399-
329+
IF_NAMESIZE
400330
INADDR_ALLHOSTS_GROUP
401331
INADDR_ANY
402332
INADDR_BROADCAST
403333
INADDR_LOOPBACK
404334
INADDR_MAX_LOCAL_GROUP
405335
INADDR_NONE
406336
INADDR_UNSPEC_GROUP
407-
408337
INET6_ADDRSTRLEN
409338
INET_ADDRSTRLEN
410-
411-
IP_ADD_MEMBERSHIP
412-
IP_ADD_SOURCE_MEMBERSHIP
413-
IP_BLOCK_SOURCE
414-
IP_DEFAULT_MULTICAST_LOOP
415-
IP_DEFAULT_MULTICAST_TTL
416-
IP_DONTFRAG
417-
IP_DROP_MEMBERSHIP
418-
IP_DROP_SOURCE_MEMBERSHIP
419-
IP_FREEBIND
420-
IP_HDRINCL
421-
IP_IPSEC_POLICY
422-
IP_MAX_MEMBERSHIPS
423-
IP_MINTTL
424-
IP_MSFILTER
425-
IP_MTU
426-
IP_MTU_DISCOVER
427-
IP_MULTICAST_IF
428-
IP_MULTICAST_LOOP
429-
IP_MULTICAST_TTL
430-
IP_ONESBCAST
431-
IP_OPTIONS
432-
IP_PASSSEC
433-
IP_PKTINFO
434-
IP_PKTOPTIONS
435-
IP_PMTUDISC_DO
436-
IP_PMTUDISC_DONT
437-
IP_PMTUDISC_WANT
438-
IP_PORTRANGE
439-
IP_RECVDSTADDR
440-
IP_RECVERR
441-
IP_RECVIF
442-
IP_RECVOPTS
443-
IP_RECVRETOPTS
444-
IP_RECVSLLA
445-
IP_RECVTOS
446-
IP_RECVTTL
447-
IP_RETOPTS
448-
IP_ROUTER_ALERT
449-
IP_SENDSRCADDR
450-
IP_TOS
451-
IP_TTL
452-
IP_UNBLOCK_SOURCE
453-
IP_XFRM_POLICY
454-
455339
IPPORT_RESERVED
456340
IPPORT_USERRESERVED
457-
458341
IPPROTO_AH
459-
IPPROTO_BIP
460342
IPPROTO_DSTOPTS
461343
IPPROTO_EGP
462-
IPPROTO_EON
463344
IPPROTO_ESP
464345
IPPROTO_FRAGMENT
465-
IPPROTO_GGP
466-
IPPROTO_HELLO
467346
IPPROTO_HOPOPTS
468347
IPPROTO_ICMP
469348
IPPROTO_ICMPV6
470349
IPPROTO_IDP
471350
IPPROTO_IGMP
472351
IPPROTO_IP
473352
IPPROTO_IPV6
474-
IPPROTO_MAX
475-
IPPROTO_ND
476353
IPPROTO_NONE
477354
IPPROTO_PUP
478355
IPPROTO_RAW
479356
IPPROTO_ROUTING
480357
IPPROTO_TCP
481358
IPPROTO_TP
482359
IPPROTO_UDP
483-
IPPROTO_XTP
484-
485360
IPV6_CHECKSUM
486361
IPV6_DONTFRAG
487362
IPV6_DSTOPTS
@@ -503,19 +378,52 @@ file 'runtime/platform.conf' => deps do |task|
503378
IPV6_RECVRTHDR
504379
IPV6_RECVTCLASS
505380
IPV6_RTHDR
506-
IPV6_RTHDR_TYPE_0
507381
IPV6_RTHDRDSTOPTS
382+
IPV6_RTHDR_TYPE_0
508383
IPV6_TCLASS
509384
IPV6_UNICAST_HOPS
510-
IPV6_USE_MIN_MTU
511385
IPV6_V6ONLY
512-
513-
IPX_TYPE
514-
515-
LOCAL_CONNWAIT
516-
LOCAL_CREDS
517-
LOCAL_PEERCRED
518-
386+
IP_ADD_MEMBERSHIP
387+
IP_ADD_SOURCE_MEMBERSHIP
388+
IP_BLOCK_SOURCE
389+
IP_DEFAULT_MULTICAST_LOOP
390+
IP_DEFAULT_MULTICAST_TTL
391+
IP_DROP_MEMBERSHIP
392+
IP_DROP_SOURCE_MEMBERSHIP
393+
IP_FREEBIND
394+
IP_HDRINCL
395+
IP_IPSEC_POLICY
396+
IP_MAX_MEMBERSHIPS
397+
IP_MINTTL
398+
IP_MSFILTER
399+
IP_MTU
400+
IP_MTU_DISCOVER
401+
IP_MULTICAST_IF
402+
IP_MULTICAST_LOOP
403+
IP_MULTICAST_TTL
404+
IP_OPTIONS
405+
IP_PASSSEC
406+
IP_PKTINFO
407+
IP_PKTOPTIONS
408+
IP_PMTUDISC_DO
409+
IP_PMTUDISC_DONT
410+
IP_PMTUDISC_WANT
411+
IP_RECVERR
412+
IP_RECVOPTS
413+
IP_RECVRETOPTS
414+
IP_RECVTOS
415+
IP_RECVTTL
416+
IP_RETOPTS
417+
IP_ROUTER_ALERT
418+
IP_TOS
419+
IP_TRANSPARENT
420+
IP_TTL
421+
IP_UNBLOCK_SOURCE
422+
IP_XFRM_POLICY
423+
LOCK_EX
424+
LOCK_NB
425+
LOCK_SH
426+
LOCK_UN
519427
MCAST_BLOCK_SOURCE
520428
MCAST_EXCLUDE
521429
MCAST_INCLUDE
@@ -525,158 +433,118 @@ file 'runtime/platform.conf' => deps do |task|
525433
MCAST_LEAVE_SOURCE_GROUP
526434
MCAST_MSFILTER
527435
MCAST_UNBLOCK_SOURCE
528-
529-
MSG_COMPAT
530436
MSG_CONFIRM
531437
MSG_CTRUNC
532438
MSG_DONTROUTE
533439
MSG_DONTWAIT
534-
MSG_EOF
535440
MSG_EOR
536441
MSG_ERRQUEUE
537442
MSG_FASTOPEN
538443
MSG_FIN
539-
MSG_FLUSH
540-
MSG_HAVEMORE
541-
MSG_HOLD
542444
MSG_MORE
543445
MSG_NOSIGNAL
544446
MSG_OOB
545447
MSG_PEEK
546448
MSG_PROXY
547-
MSG_RCVMORE
548449
MSG_RST
549-
MSG_SEND
550450
MSG_SYN
551451
MSG_TRUNC
552452
MSG_WAITALL
553-
554453
NI_DGRAM
555454
NI_MAXHOST
556455
NI_MAXSERV
557456
NI_NAMEREQD
558457
NI_NOFQDN
559458
NI_NUMERICHOST
560459
NI_NUMERICSERV
561-
562460
PF_APPLETALK
563-
PF_ATM
564461
PF_AX25
565-
PF_CCITT
566-
PF_CHAOS
567-
PF_CNT
568-
PF_COIP
569-
PF_DATAKIT
570-
PF_DEC
571-
PF_DLI
572-
PF_ECMA
573-
PF_HYLINK
574-
PF_IMPLINK
575462
PF_INET
576463
PF_INET6
577464
PF_IPX
578465
PF_ISDN
579-
PF_ISO
580466
PF_KEY
581-
PF_LAT
582-
PF_LINK
583467
PF_LOCAL
584468
PF_MAX
585-
PF_NATM
586-
PF_NDRV
587-
PF_NETBIOS
588-
PF_NETGRAPH
589-
PF_NS
590-
PF_OSI
591469
PF_PACKET
592-
PF_PIP
593-
PF_PPP
594-
PF_PUP
595470
PF_ROUTE
596-
PF_RTIP
597-
PF_SIP
598471
PF_SNA
599-
PF_SYSTEM
600472
PF_UNIX
601473
PF_UNSPEC
602-
PF_XTP
603-
604-
SCM_BINTIME
605474
SCM_CREDENTIALS
606-
SCM_CREDS
607475
SCM_RIGHTS
608476
SCM_TIMESTAMP
477+
SCM_TIMESTAMPING
609478
SCM_TIMESTAMPNS
610-
SCM_UCRED
611-
479+
SCM_WIFI_STATUS
480+
SEEK_CUR
481+
SEEK_DATA
482+
SEEK_END
483+
SEEK_HOLE
484+
SEEK_SET
612485
SHUT_RD
613486
SHUT_RDWR
614487
SHUT_WR
615-
488+
SOCK_DGRAM
489+
SOCK_PACKET
490+
SOCK_RAW
491+
SOCK_RDM
492+
SOCK_SEQPACKET
493+
SOCK_STREAM
494+
SOL_IP
495+
SOL_SOCKET
496+
SOL_TCP
497+
SOL_UDP
616498
SO_ACCEPTCONN
617-
SO_ACCEPTFILTER
618-
SO_ALLZONES
619499
SO_ATTACH_FILTER
620500
SO_BINDTODEVICE
621-
SO_BINTIME
501+
SO_BPF_EXTENSIONS
622502
SO_BROADCAST
503+
SO_BUSY_POLL
623504
SO_DEBUG
624505
SO_DETACH_FILTER
506+
SO_DOMAIN
625507
SO_DONTROUTE
626-
SO_DONTTRUNC
627508
SO_ERROR
509+
SO_GET_FILTER
628510
SO_KEEPALIVE
629511
SO_LINGER
630-
SO_MAC_EXEMPT
631-
SO_NKE
512+
SO_LOCK_FILTER
513+
SO_MARK
514+
SO_MAX_PACING_RATE
515+
SO_NOFCS
632516
SO_NO_CHECK
633-
SO_NOSIGPIPE
634-
SO_NREAD
635517
SO_OOBINLINE
636518
SO_PASSCRED
519+
SO_PASSSEC
520+
SO_PEEK_OFF
637521
SO_PEERCRED
638522
SO_PEERNAME
523+
SO_PEERSEC
639524
SO_PRIORITY
525+
SO_PROTOCOL
640526
SO_RCVBUF
527+
SO_RCVBUFFORCE
641528
SO_RCVLOWAT
642529
SO_RCVTIMEO
643-
SO_RECVUCRED
644530
SO_REUSEADDR
645531
SO_REUSEPORT
532+
SO_RXQ_OVFL
646533
SO_SECURITY_AUTHENTICATION
647534
SO_SECURITY_ENCRYPTION_NETWORK
648535
SO_SECURITY_ENCRYPTION_TRANSPORT
536+
SO_SELECT_ERR_QUEUE
649537
SO_SNDBUF
538+
SO_SNDBUFFORCE
650539
SO_SNDLOWAT
651540
SO_SNDTIMEO
652541
SO_TIMESTAMP
542+
SO_TIMESTAMPING
653543
SO_TIMESTAMPNS
654544
SO_TYPE
655-
SO_USELOOPBACK
656-
SO_WANTMORE
657-
SO_WANTOOBFLAG
658-
659-
SOCK_DGRAM
660-
SOCK_PACKET
661-
SOCK_RAW
662-
SOCK_RDM
663-
SOCK_SEQPACKET
664-
SOCK_STREAM
665-
666-
SOL_ATALK
667-
SOL_AX25
668-
SOL_IP
669-
SOL_IPX
670-
SOL_SOCKET
671-
SOL_TCP
672-
SOL_UDP
673-
674-
SOMAXCONN
675-
676-
SOPRI_BACKGROUND
677-
SOPRI_INTERACTIVE
678-
SOPRI_NORMAL
679-
545+
SO_WIFI_STATUS
546+
TCP_CONGESTION
547+
TCP_COOKIE_TRANSACTIONS
680548
TCP_CORK
681549
TCP_DEFER_ACCEPT
682550
TCP_FASTOPEN
@@ -688,12 +556,17 @@ file 'runtime/platform.conf' => deps do |task|
688556
TCP_MAXSEG
689557
TCP_MD5SIG
690558
TCP_NODELAY
691-
TCP_NOOPT
692-
TCP_NOPUSH
559+
TCP_QUEUE_SEQ
693560
TCP_QUICKACK
561+
TCP_REPAIR
562+
TCP_REPAIR_OPTIONS
563+
TCP_REPAIR_QUEUE
694564
TCP_SYNCNT
565+
TCP_THIN_DUPACK
566+
TCP_THIN_LINEAR_TIMEOUTS
567+
TCP_TIMESTAMP
568+
TCP_USER_TIMEOUT
695569
TCP_WINDOW_CLAMP
696-
697570
UDP_CORK
698571
]
699572

0 commit comments

Comments
 (0)
Please sign in to comment.