diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2014-09-14 21:20:13 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2014-09-14 21:20:13 +0200 |
commit | 7f295c205577f604c8c078fd3f5626330e774ec9 (patch) | |
tree | 8331077eb7556674660ec4882457c05247f3a7fe /sys/src/cmd/ip | |
parent | fdf3883ce43eefe329c93494c32b7005a86759fb (diff) |
telnetd: let the kernel place the shared segment in segattach() (thanks kenji arisawa)
Diffstat (limited to 'sys/src/cmd/ip')
-rw-r--r-- | sys/src/cmd/ip/telnetd.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/sys/src/cmd/ip/telnetd.c b/sys/src/cmd/ip/telnetd.c index 83de53db4..cf5483a93 100644 --- a/sys/src/cmd/ip/telnetd.c +++ b/sys/src/cmd/ip/telnetd.c @@ -541,23 +541,17 @@ xlocsub(Biobuf *bp, uchar *sub, int n) } /* - * create a shared segment. Make is start 2 meg higher than the current - * end of process memory. + * create a shared segment. */ void* share(ulong len) { - uchar *vastart; + void *v; - vastart = sbrk(0); - if(vastart == (void*)-1) - return 0; - vastart += 2*1024*1024; - - if(segattach(0, "shared", vastart, len) == (void*)-1) - return 0; - - return vastart; + v = segattach(0, "shared", 0, len); + if(v == (void*)-1) + return nil; + return v; } /* |