summary refs log tree commit diff
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2009-03-27 17:22:55 -0700
committerDavid S. Miller <davem@davemloft.net>2009-03-27 17:22:55 -0700
commit80e20f6f360078b4852eac6825883e5aa25564bb (patch)
tree817c24d119c64984a4c68f565118b5398937ab15
parent79675900cbf2c4e67e95f94983ec4ee800b83739 (diff)
downloadlinux-80e20f6f360078b4852eac6825883e5aa25564bb.tar.gz
Revert "netrom: zero length frame filtering in NetRom"
This reverts commit a3ac80a130300573de351083cf4a5b46d233e8bf.

Alan Cox says that zero length writes do have special meaning
and are useful in this protocol.

Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/netrom/af_netrom.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/net/netrom/af_netrom.c b/net/netrom/af_netrom.c
index d1c16bbee932..4e705f87969f 100644
--- a/net/netrom/af_netrom.c
+++ b/net/netrom/af_netrom.c
@@ -1037,10 +1037,6 @@ static int nr_sendmsg(struct kiocb *iocb, struct socket *sock,
 	unsigned char *asmptr;
 	int size;
 
-	/* Netrom empty data frame has no meaning : don't send */
-	if (len == 0)
-		return 0;
-
 	if (msg->msg_flags & ~(MSG_DONTWAIT|MSG_EOR|MSG_CMSG_COMPAT))
 		return -EINVAL;
 
@@ -1175,11 +1171,6 @@ static int nr_recvmsg(struct kiocb *iocb, struct socket *sock,
 	skb_reset_transport_header(skb);
 	copied     = skb->len;
 
-	/* NetRom empty data frame has no meaning : ignore it */
-	if (copied == 0) {
-		goto out;
-	}
-
 	if (copied > size) {
 		copied = size;
 		msg->msg_flags |= MSG_TRUNC;
@@ -1195,7 +1186,7 @@ static int nr_recvmsg(struct kiocb *iocb, struct socket *sock,
 
 	msg->msg_namelen = sizeof(*sax);
 
-out:	skb_free_datagram(sk, skb);
+	skb_free_datagram(sk, skb);
 
 	release_sock(sk);
 	return copied;