提交 5eee6a6d 编写于 作者: A Allan Stephens 提交者: David S. Miller

[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: NAllan Stephens <allan.stephens@windriver.com>
Signed-off-by: NJon Paul Maloy <jon.maloy@ericsson.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 f3ec75f6
/*
* 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 = {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册