From cc0f00680d8f7f8bc3f3bc4fc909a99b0a3432b4 Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Wed, 23 Apr 2003 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 2003-04-23 --- ip/devip.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/ip/devip.c b/ip/devip.c index 04f7decb35eef42cd6d6d778e50fdccfa059524d..3d1038f4f410993b7d6ec2386ed9561f08cf75d4 100644 --- a/ip/devip.c +++ b/ip/devip.c @@ -820,6 +820,7 @@ setladdrport(Conv* c, char* str, int announcing) char *p; char *rv; ushort lport; + uchar addr[IPaddrlen]; rv = nil; @@ -844,8 +845,13 @@ setladdrport(Conv* c, char* str, int announcing) } else { if(strcmp(str, "*") == 0) ipmove(c->laddr, IPnoaddr); - else - parseip(c->laddr, str); + else { + parseip(addr, str); + if(ipforme(c->p->f, addr)) + ipmove(c->laddr, addr); + else + return "not a local IP address"; + } } /* one process can get all connections */