add internet-common options in pcb, add ip header prototype for ttl and tos;
[unix-history] / usr / src / sys / kern / uipc_usrreq.c
index 34760d5..cdd33c7 100644 (file)
@@ -12,7 +12,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)uipc_usrreq.c       7.18 (Berkeley) %G%
+ *     @(#)uipc_usrreq.c       7.19 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -368,7 +368,10 @@ unp_bind(unp, nam)
        vp = ndp->ni_vp;
        if (vp != NULL) {
                VOP_ABORTOP(ndp);
        vp = ndp->ni_vp;
        if (vp != NULL) {
                VOP_ABORTOP(ndp);
-               vput(ndp->ni_dvp);
+               if (ndp->ni_dvp == vp)
+                       vrele(ndp->ni_dvp);
+               else
+                       vput(ndp->ni_dvp);
                vrele(vp);
                return (EADDRINUSE);
        }
                vrele(vp);
                return (EADDRINUSE);
        }