* open and bind RX socket
*/
struct osi_socket *
-rxk_NewSocket(short aport)
+rxk_NewSocketHost(afs_uint32 ahost, short aport)
{
struct socket *sockp;
struct sockaddr_in myaddr;
int code;
+#ifdef LINUX_KERNEL_IS_SELINUX
+ code = sock_create(AF_INET, SOCK_DGRAM, IPPROTO_UDP, &sockp, 0);
+#else
code = sock_create(AF_INET, SOCK_DGRAM, IPPROTO_UDP, &sockp);
+#endif
if (code < 0)
return NULL;
/* Bind socket */
myaddr.sin_family = AF_INET;
- myaddr.sin_addr.s_addr = htonl(INADDR_ANY);
+ myaddr.sin_addr.s_addr = ahost;
myaddr.sin_port = aport;
code =
sockp->ops->bind(sockp, (struct sockaddr *)&myaddr, sizeof(myaddr));
return (struct osi_socket *)sockp;
}
+struct osi_socket *
+rxk_NewSocket(short aport)
+{
+ return rxk_NewSocketHost(htonl(INADDR_ANY), aport);
+}
/* free socket allocated by osi_NetSocket */
int