76 #ifndef MCAST_BLOCK_SOURCE |
76 #ifndef MCAST_BLOCK_SOURCE |
77 #define MCAST_BLOCK_SOURCE 64 |
77 #define MCAST_BLOCK_SOURCE 64 |
78 #define MCAST_UNBLOCK_SOURCE 65 |
78 #define MCAST_UNBLOCK_SOURCE 65 |
79 #define MCAST_JOIN_SOURCE_GROUP 66 |
79 #define MCAST_JOIN_SOURCE_GROUP 66 |
80 #define MCAST_LEAVE_SOURCE_GROUP 67 |
80 #define MCAST_LEAVE_SOURCE_GROUP 67 |
|
81 |
|
82 /* This means we're on AIX 5.3 and 'group_source_req' and 'ip_mreq_source' aren't defined as well */ |
|
83 struct group_source_req { |
|
84 uint32_t gsr_interface; |
|
85 struct sockaddr_storage gsr_group; |
|
86 struct sockaddr_storage gsr_source; |
|
87 }; |
|
88 struct ip_mreq_source { |
|
89 struct in_addr imr_multiaddr; /* IP multicast address of group */ |
|
90 struct in_addr imr_sourceaddr; /* IP address of source */ |
|
91 struct in_addr imr_interface; /* local IP address of interface */ |
|
92 }; |
81 #endif |
93 #endif |
82 #endif /* _AIX */ |
94 #endif /* _AIX */ |
83 |
95 |
84 #define COPY_INET6_ADDRESS(env, source, target) \ |
96 #define COPY_INET6_ADDRESS(env, source, target) \ |
85 (*env)->GetByteArrayRegion(env, source, 0, 16, target) |
97 (*env)->GetByteArrayRegion(env, source, 0, 16, target) |