Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5eee6a6d authored by Allan Stephens's avatar Allan Stephens Committed by David S. Miller
Browse files

[TIPC]: Use standard socket "not implemented" routines



This patch modifies TIPC's socket API to utilize existing
generic routines to indicate unsupported operations, rather
than adding similar TIPC-specific routines.

Signed-off-by: default avatarAllan Stephens <allan.stephens@windriver.com>
Signed-off-by: default avatarJon Paul Maloy <jon.maloy@ericsson.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f3ec75f6
Loading
Loading
Loading
Loading
+14 −41
Original line number Diff line number Diff line
/*
 * net/tipc/socket.c: TIPC socket API
 *
 * Copyright (c) 2001-2006, Ericsson AB
 * Copyright (c) 2004-2006, Wind River Systems
 * Copyright (c) 2001-2007, Ericsson AB
 * Copyright (c) 2004-2007, Wind River Systems
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
@@ -1599,33 +1599,6 @@ static int getsockopt(struct socket *sock,
	return res;
}

/**
 * Placeholders for non-implemented functionality
 *
 * Returns error code (POSIX-compliant where defined)
 */

static int ioctl(struct socket *s, u32 cmd, unsigned long arg)
{
	return -EINVAL;
}

static int no_mmap(struct file *file, struct socket *sock,
		   struct vm_area_struct *vma)
{
	return -EINVAL;
}
static ssize_t no_sendpage(struct socket *sock, struct page *page,
			   int offset, size_t size, int flags)
{
	return -EINVAL;
}

static int no_skpair(struct socket *s1, struct socket *s2)
{
	return -EOPNOTSUPP;
}

/**
 * Protocol switches for the various types of TIPC sockets
 */
@@ -1636,19 +1609,19 @@ static struct proto_ops msg_ops = {
	.release	= release,
	.bind		= bind,
	.connect	= connect,
	.socketpair	= no_skpair,
	.socketpair	= sock_no_socketpair,
	.accept		= accept,
	.getname	= get_name,
	.poll		= poll,
	.ioctl		= ioctl,
	.ioctl		= sock_no_ioctl,
	.listen		= listen,
	.shutdown	= shutdown,
	.setsockopt	= setsockopt,
	.getsockopt	= getsockopt,
	.sendmsg	= send_msg,
	.recvmsg	= recv_msg,
	.mmap		= no_mmap,
	.sendpage	= no_sendpage
        .mmap		= sock_no_mmap,
        .sendpage	= sock_no_sendpage
};

static struct proto_ops packet_ops = {
@@ -1657,19 +1630,19 @@ static struct proto_ops packet_ops = {
	.release	= release,
	.bind		= bind,
	.connect	= connect,
	.socketpair	= no_skpair,
	.socketpair	= sock_no_socketpair,
	.accept		= accept,
	.getname	= get_name,
	.poll		= poll,
	.ioctl		= ioctl,
	.ioctl		= sock_no_ioctl,
	.listen		= listen,
	.shutdown	= shutdown,
	.setsockopt	= setsockopt,
	.getsockopt	= getsockopt,
	.sendmsg	= send_packet,
	.recvmsg	= recv_msg,
	.mmap		= no_mmap,
	.sendpage	= no_sendpage
        .mmap		= sock_no_mmap,
        .sendpage	= sock_no_sendpage
};

static struct proto_ops stream_ops = {
@@ -1678,19 +1651,19 @@ static struct proto_ops stream_ops = {
	.release	= release,
	.bind		= bind,
	.connect	= connect,
	.socketpair	= no_skpair,
	.socketpair	= sock_no_socketpair,
	.accept		= accept,
	.getname	= get_name,
	.poll		= poll,
	.ioctl		= ioctl,
	.ioctl		= sock_no_ioctl,
	.listen		= listen,
	.shutdown	= shutdown,
	.setsockopt	= setsockopt,
	.getsockopt	= getsockopt,
	.sendmsg	= send_stream,
	.recvmsg	= recv_stream,
	.mmap		= no_mmap,
	.sendpage	= no_sendpage
        .mmap		= sock_no_mmap,
        .sendpage	= sock_no_sendpage
};

static struct net_proto_family tipc_family_ops = {