Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 04 Jun 1999 13:44:53 +0100
From:      Brian Somers <brian@Awfulhak.org>
To:        Tony Finch <dot@dotat.at>
Cc:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/11988: recvmsg with a cmsghdr but no iovec is broken 
Message-ID:  <199906041244.NAA04400@keep.lan.Awfulhak.org>
In-Reply-To: Your message of "Fri, 04 Jun 1999 05:30:03 PDT." <199906041230.FAA78876@freefall.freebsd.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multipart MIME message.

--==_Exmh_-20436880050
Content-Type: text/plain; charset=us-ascii

[.....]
>  > I've had a poke around 'cos I recalled seeing someone else spot this. 
>  > The -current sendmsg man page mentions it in the BUGS section.
>  
>  -STABLE too. Do you have code to provoke it?
>  
>  Tony.

Sure, I've attached a patch against the -current ppp.  Use the 
``mloop'' label in ppp.conf.sample.

-- 
Brian <brian@Awfulhak.org>                        <brian@FreeBSD.org>
      <http://www.Awfulhak.org>;                   <brian@OpenBSD.org>
Don't _EVER_ lose your sense of humour !          <brian@uk.FreeBSD.org>


--==_Exmh_-20436880050
Content-Type: application/x-patch ; name="t.patch"
Content-Description: t.patch
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment; filename="t.patch"

Index: bundle.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /home/ncvs/src/usr.sbin/ppp/bundle.c,v
retrieving revision 1.56
diff -u -r1.56 bundle.c
--- bundle.c	1999/06/02 00:46:50	1.56
+++ bundle.c	1999/06/04 12:42:04
@@ -1437,7 +1437,7 @@
     return;
   }
 =

-  write(s, "!", 1);	/* ACK */
+  /* write(s, "!", 1); */	/* ACK */
   close(s);
 =

   if (cmsg->cmsg_type !=3D SCM_RIGHTS) {
@@ -1520,7 +1520,7 @@
     if (sendmsg(s, &msg, 0) =3D=3D -1)
       log_Printf(LogERROR, "Failed sendmsg: %s\n", strerror(errno));
     /* We must get the ACK before closing the descriptor ! */
-    read(s, &ack, 1);
+    /* read(s, &ack, 1); */
 =

     newsid =3D Enabled(dl->bundle, OPT_KEEPSESSION) ||
              tcgetpgrp(link_fd) =3D=3D getpgrp();

--==_Exmh_-20436880050--




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199906041244.NAA04400>