| Summary: | add '-c' flag to src/bin/domainname to clear domainname | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Base System | Reporter: | Pete Fritchman <petef> | ||||||
| Component: | bin | Assignee: | freebsd-bugs (Nobody) <bugs> | ||||||
| Status: | Closed FIXED | ||||||||
| Severity: | Affects Only Me | ||||||||
| Priority: | Normal | ||||||||
| Version: | 5.0-CURRENT | ||||||||
| Hardware: | Any | ||||||||
| OS: | Any | ||||||||
| Attachments: |
|
||||||||
|
Description
Pete Fritchman
2001-01-22 18:30:00 UTC
<<On Mon, 22 Jan 2001 13:21:08 -0500 (EST), petef@databits.net said: > Set a domainname with domainname(1) and try to clear it using domainname(1). "domainname ''" doesn't do it for you? -GAWollman ++ 22/01/01 13:34 -0500 - Garrett Wollman: >[...] >> Set a domainname with domainname(1) and try to clear it using domainname(1). > >"domainname ''" doesn't do it for you? > Nope. electron# ./domainname -c electron# ./domainname electron# ./domainname foo.bar electron# ./domainname '' electron# ./domainname foo.bar electron# ./domainname -c electron# ./domainname electron# >-GAWollman -pete -- Pete Fritchman <petef@databits.net> Databits Network Services, Inc. <http://databits.net> <<On Mon, 22 Jan 2001 11:10:02 -0800 (PST), Pete Fritchman <petef@databits.net> said: > electron# ./domainname foo.bar > electron# ./domainname '' > electron# ./domainname > foo.bar I think this is a bug in sysctl. Note the following: root@khavrinen(6)# sysctl -w kern.domainname='' kern.domainname: foo.bar -> foo.bar What is happening is that the sysctl() system call is interpreting the request to set the MIB variable to a zero-length object as if it were an indication that setting is not requested. Here is an (untested) fix (beware cut&paste has bogotified whitespace): --- kern_sysctl.c 2000/07/28 22:40:04 1.100 +++ kern_sysctl.c 2001/01/22 20:01:38 @@ -862,7 +862,7 @@ req.oldptr= old; } - if (newlen) { + if (new) { req.newlen = newlen; req.newptr = new; } @@ -1101,7 +1101,7 @@ req.oldptr= old; } - if (newlen) { + if (new) { if (!useracc(new, req.newlen, VM_PROT_READ)) return (EFAULT); req.newlen = newlen; -GAWollman State Changed From-To: open->closed `domainname ''` works now. |