@@ -42,7 +42,13 @@ cfg_if! {
4242pub type socklen_t = u32 ;
4343pub type speed_t = u32 ;
4444pub type suseconds_t = i32 ;
45- pub type tcflag_t = :: c_uint ;
45+ cfg_if ! {
46+ if #[ cfg( target_os = "espidf" ) ] {
47+ pub type tcflag_t = u16 ;
48+ } else {
49+ pub type tcflag_t = :: c_uint;
50+ }
51+ }
4652pub type useconds_t = u32 ;
4753
4854cfg_if ! {
@@ -244,7 +250,14 @@ align_const! {
244250 size: [ __PTHREAD_INITIALIZER_BYTE; __SIZEOF_PTHREAD_RWLOCK_T] ,
245251 } ;
246252}
247- pub const NCCS : usize = 32 ;
253+
254+ cfg_if ! {
255+ if #[ cfg( target_os = "espidf" ) ] {
256+ pub const NCCS : usize = 11 ;
257+ } else {
258+ pub const NCCS : usize = 32 ;
259+ }
260+ }
248261
249262cfg_if ! {
250263 if #[ cfg( target_os = "espidf" ) ] {
@@ -423,7 +436,13 @@ pub const O_SYNC: ::c_int = 8192;
423436pub const O_NONBLOCK : :: c_int = 16384 ;
424437
425438pub const O_ACCMODE : :: c_int = 3 ;
426- pub const O_CLOEXEC : :: c_int = 0x80000 ;
439+ cfg_if ! {
440+ if #[ cfg( target_os = "espidf" ) ] {
441+ pub const O_CLOEXEC : :: c_int = 0x40000 ;
442+ } else {
443+ pub const O_CLOEXEC : :: c_int = 0x80000 ;
444+ }
445+ }
427446
428447pub const RTLD_LAZY : :: c_int = 0x1 ;
429448
@@ -465,7 +484,13 @@ pub const SOL_TCP: ::c_int = 6;
465484
466485pub const PF_UNSPEC : :: c_int = 0 ;
467486pub const PF_INET : :: c_int = 2 ;
468- pub const PF_INET6 : :: c_int = 23 ;
487+ cfg_if ! {
488+ if #[ cfg( target_os = "espidf" ) ] {
489+ pub const PF_INET6 : :: c_int = 10 ;
490+ } else {
491+ pub const PF_INET6 : :: c_int = 23 ;
492+ }
493+ }
469494
470495pub const AF_UNSPEC : :: c_int = 0 ;
471496pub const AF_INET : :: c_int = 2 ;
@@ -550,6 +575,9 @@ cfg_if! {
550575 if #[ cfg( target_os = "vita" ) ] {
551576 pub const TCP_NODELAY : :: c_int = 1 ;
552577 pub const TCP_MAXSEG : :: c_int = 2 ;
578+ } else if #[ cfg( target_os = "espidf" ) ] {
579+ pub const TCP_NODELAY : :: c_int = 1 ;
580+ pub const TCP_MAXSEG : :: c_int = 8194 ;
553581 } else {
554582 pub const TCP_NODELAY : :: c_int = 8193 ;
555583 pub const TCP_MAXSEG : :: c_int = 8194 ;
@@ -558,69 +586,131 @@ cfg_if! {
558586
559587pub const TCP_NOPUSH : :: c_int = 4 ;
560588pub const TCP_NOOPT : :: c_int = 8 ;
561- pub const TCP_KEEPIDLE : :: c_int = 256 ;
562- pub const TCP_KEEPINTVL : :: c_int = 512 ;
563- pub const TCP_KEEPCNT : :: c_int = 1024 ;
589+ cfg_if ! {
590+ if #[ cfg( target_os = "espidf" ) ] {
591+ pub const TCP_KEEPIDLE : :: c_int = 3 ;
592+ pub const TCP_KEEPINTVL : :: c_int = 4 ;
593+ pub const TCP_KEEPCNT : :: c_int = 5 ;
594+ } else {
595+ pub const TCP_KEEPIDLE : :: c_int = 256 ;
596+ pub const TCP_KEEPINTVL : :: c_int = 512 ;
597+ pub const TCP_KEEPCNT : :: c_int = 1024 ;
598+ }
599+ }
564600
565601cfg_if ! {
566602 if #[ cfg( target_os = "horizon" ) ] {
567603 pub const IP_TOS : :: c_int = 7 ;
604+ } else if #[ cfg( target_os = "espidf" ) ] {
605+ pub const IP_TOS : :: c_int = 1 ;
568606 } else {
569607 pub const IP_TOS : :: c_int = 3 ;
570608 }
571609}
572610cfg_if ! {
573611 if #[ cfg( target_os = "vita" ) ] {
574612 pub const IP_TTL : :: c_int = 4 ;
613+ } else if #[ cfg( target_os = "espidf" ) ] {
614+ pub const IP_TTL : :: c_int = 2 ;
575615 } else {
576616 pub const IP_TTL : :: c_int = 8 ;
577617 }
578618}
579- pub const IP_MULTICAST_IF : :: c_int = 9 ;
580- pub const IP_MULTICAST_TTL : :: c_int = 10 ;
581- pub const IP_MULTICAST_LOOP : :: c_int = 11 ;
619+
620+ cfg_if ! {
621+ if #[ cfg( target_os = "espidf" ) ] {
622+ pub const IP_MULTICAST_IF : :: c_int = 6 ;
623+ pub const IP_MULTICAST_TTL : :: c_int = 5 ;
624+ pub const IP_MULTICAST_LOOP : :: c_int = 7 ;
625+ } else {
626+ pub const IP_MULTICAST_IF : :: c_int = 9 ;
627+ pub const IP_MULTICAST_TTL : :: c_int = 10 ;
628+ pub const IP_MULTICAST_LOOP : :: c_int = 11 ;
629+ }
630+ }
631+
582632cfg_if ! {
583633 if #[ cfg( target_os = "vita" ) ] {
584634 pub const IP_ADD_MEMBERSHIP : :: c_int = 12 ;
585635 pub const IP_DROP_MEMBERSHIP : :: c_int = 13 ;
636+ } else if #[ cfg( target_os = "espidf" ) ] {
637+ pub const IP_ADD_MEMBERSHIP : :: c_int = 3 ;
638+ pub const IP_DROP_MEMBERSHIP : :: c_int = 4 ;
586639 } else {
587640 pub const IP_ADD_MEMBERSHIP : :: c_int = 11 ;
588641 pub const IP_DROP_MEMBERSHIP : :: c_int = 12 ;
589642 }
590643}
591644pub const IPV6_UNICAST_HOPS : :: c_int = 4 ;
592- pub const IPV6_MULTICAST_IF : :: c_int = 9 ;
593- pub const IPV6_MULTICAST_HOPS : :: c_int = 10 ;
594- pub const IPV6_MULTICAST_LOOP : :: c_int = 11 ;
645+ cfg_if ! {
646+ if #[ cfg( target_os = "espidf" ) ] {
647+ pub const IPV6_MULTICAST_IF : :: c_int = 768 ;
648+ pub const IPV6_MULTICAST_HOPS : :: c_int = 769 ;
649+ pub const IPV6_MULTICAST_LOOP : :: c_int = 770 ;
650+ } else {
651+ pub const IPV6_MULTICAST_IF : :: c_int = 9 ;
652+ pub const IPV6_MULTICAST_HOPS : :: c_int = 10 ;
653+ pub const IPV6_MULTICAST_LOOP : :: c_int = 11 ;
654+ }
655+ }
595656pub const IPV6_V6ONLY : :: c_int = 27 ;
596657pub const IPV6_JOIN_GROUP : :: c_int = 12 ;
597658pub const IPV6_LEAVE_GROUP : :: c_int = 13 ;
598659pub const IPV6_ADD_MEMBERSHIP : :: c_int = 12 ;
599660pub const IPV6_DROP_MEMBERSHIP : :: c_int = 13 ;
600661
601- pub const HOST_NOT_FOUND : :: c_int = 1 ;
602- pub const NO_DATA : :: c_int = 2 ;
662+ cfg_if ! {
663+ if #[ cfg( target_os = "espidf" ) ] {
664+ pub const HOST_NOT_FOUND : :: c_int = 210 ;
665+ pub const NO_DATA : :: c_int = 211 ;
666+ pub const NO_RECOVERY : :: c_int = 212 ;
667+ pub const TRY_AGAIN : :: c_int = 213 ;
668+
669+ } else {
670+ pub const HOST_NOT_FOUND : :: c_int = 1 ;
671+ pub const NO_DATA : :: c_int = 2 ;
672+ pub const NO_RECOVERY : :: c_int = 3 ;
673+ pub const TRY_AGAIN : :: c_int = 4 ;
674+ }
675+ }
603676pub const NO_ADDRESS : :: c_int = 2 ;
604- pub const NO_RECOVERY : :: c_int = 3 ;
605- pub const TRY_AGAIN : :: c_int = 4 ;
606677
607678pub const AI_PASSIVE : :: c_int = 1 ;
608679pub const AI_CANONNAME : :: c_int = 2 ;
609680pub const AI_NUMERICHOST : :: c_int = 4 ;
610- pub const AI_NUMERICSERV : :: c_int = 0 ;
611- pub const AI_ADDRCONFIG : :: c_int = 0 ;
681+ cfg_if ! {
682+ if #[ cfg( target_os = "espidf" ) ] {
683+ pub const AI_NUMERICSERV : :: c_int = 8 ;
684+ pub const AI_ADDRCONFIG : :: c_int = 64 ;
685+ } else {
686+ pub const AI_NUMERICSERV : :: c_int = 0 ;
687+ pub const AI_ADDRCONFIG : :: c_int = 0 ;
688+ }
689+ }
612690
613691pub const NI_MAXHOST : :: c_int = 1025 ;
614692pub const NI_MAXSERV : :: c_int = 32 ;
615693pub const NI_NOFQDN : :: c_int = 1 ;
616694pub const NI_NUMERICHOST : :: c_int = 2 ;
617695pub const NI_NAMEREQD : :: c_int = 4 ;
618- pub const NI_NUMERICSERV : :: c_int = 0 ;
619- pub const NI_DGRAM : :: c_int = 0 ;
696+ cfg_if ! {
697+ if #[ cfg( target_os = "espidf" ) ] {
698+ pub const NI_NUMERICSERV : :: c_int = 8 ;
699+ pub const NI_DGRAM : :: c_int = 16 ;
700+ } else {
701+ pub const NI_NUMERICSERV : :: c_int = 0 ;
702+ pub const NI_DGRAM : :: c_int = 0 ;
703+ }
704+ }
620705
621706cfg_if ! {
622707 // Defined in vita/mod.rs for "vita"
623- if #[ cfg( not( target_os = "vita" ) ) ] {
708+ if #[ cfg( target_os = "espidf" ) ] {
709+ pub const EAI_FAMILY : :: c_int = 204 ;
710+ pub const EAI_MEMORY : :: c_int = 203 ;
711+ pub const EAI_NONAME : :: c_int = 200 ;
712+ pub const EAI_SOCKTYPE : :: c_int = 10 ;
713+ } else if #[ cfg( not( target_os = "vita" ) ) ] {
624714 pub const EAI_FAMILY : :: c_int = -303 ;
625715 pub const EAI_MEMORY : :: c_int = -304 ;
626716 pub const EAI_NONAME : :: c_int = -305 ;
0 commit comments