Linus,
Here are the new IrDA patches for Linux-2.4.0-test10. Please apply them to
your latest 2.4 code. If you decide to apply them, then I suggest you start
with the first one (irda1.diff) and work your way to the last one
(irda24.diff) since most of them are not commutative.
The name of this patch is irda6.diff.
(Many thanks to Jean Tourrilhes for splitting up the big patch)
[FEATURE] : Add a new feature to the IrDA stack
[CORRECT] : Fix to have the correct/expected behaviour
[CRITICA] : Fix potential kernel crash
[OUPS ] : Error that will be fixed in a later patch
irda6.diff :
----------------
o [CORRECT] Handle properly the MSG_EOR flag on SEQPACKET sockets
idiff -urpN old-linux/net/irda/af_irda.c linux/net/irda/af_irda.c
--- old-linux/net/irda/af_irda.c Thu Nov 9 13:36:27 2000
+++ linux/net/irda/af_irda.c Thu Nov 9 13:37:09 2000
@@ -1291,7 +1291,8 @@ static int irda_sendmsg(struct socket *s
IRDA_DEBUG(4, __FUNCTION__ "(), len=%d\n", len);
- if (msg->msg_flags & ~MSG_DONTWAIT)
+ /* Note : socket.c set MSG_EOR on SEQPACKET sockets */
+ if (msg->msg_flags & ~(MSG_DONTWAIT | MSG_EOR))
return -EINVAL;
if (sk->shutdown & SEND_SHUTDOWN) {