Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 60969 - openntpd errors
Summary: openntpd errors
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All All
: High normal (vote)
Assignee: SpanKY
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-08-19 19:27 UTC by Daniel Black (RETIRED)
Modified: 2004-08-24 14:05 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Black (RETIRED) gentoo-dev 2004-08-19 19:27:33 UTC
1. missing metadata.xml
2. should confict with net-misc/ntp (and vice versa) - both provide /usr/sbin/ntpd, same man pages and config file.
3. Failes to sync time (I know this is probably upstream - will look at it more later if I get time)

Server 1: - local lan ntp server
# cat /etc/ntpd.conf
listen on 10.10.10.10
listen on 127.0.0.1
server au.pool.ntp.org

using a "strace -f ntpd -d"
the time is adjusted using adjtimex
i.e.
[pid  1963] adjtimex({modes=32769, offset=0, freq=-33368279, maxerror=16384000, esterror=149055, status=65, constant=2, precision=1, tolerance=33554432, time={1092968148, 645880}}) = 5
Note: return code 5 is a failure however it did set the time

Workstation 1:
cat /etc/ntpd.conf
server spider
Note - spider = server 1

strace -f ntpd -d
[pid 22222] time(adjusting local clock by 747.548123s
 <unfinished ...>
[pid 22221] <... write resumed> )       = 37
[pid 22222] <... time resumed> NULL)    = 1092967829
[pid 22221] adjtimex( <unfinished ...>
[pid 22222] time( <unfinished ...>
[pid 22221] <... adjtimex resumed> {modes=32769, offset=747083964, freq=0, maxerror=16384000, esterror=16384000, status=65, constant=0, precision=1, tolerance=33554432, time={1092967829, 941387}}) = 5

time was not adjusted to that of the server - still 10 min difference between server and workstation.

4. Fails to chroot on root process. (not sure if this is an error) I imagine the root process needs priv to set time which shouldn't eliminate the need for chroot. Not sure if it needs priv for anything else.

run ntpd with a listen and a server clause as in 3.
run lsof | fgrep ntpd to see both processes
The processes running as ntp appears to be chrooted in /var/empty however the root process isn't

using strace -f confirms this.


5. Minor init script problems
 * Starting ntpd...                                                                                         [ ok ]
spider root # ps -ef | fgrep ntpd
root      1799     1  0 11:28 ?        00:00:00 /usr/sbin/ntpd
ntp       1800  1799  0 11:28 ?        00:00:00 /usr/sbin/ntpd
spider root # /etc/init.d/openntpd stop
runscript_selinux.so: Could not open file /etc/security/run_init_type
runscript_selinux.so: Assuming run_init type is run_init_t
 * Stopping ntpd...
start-stop-daemon: warning: failed to kill 1799: No such process
1 pids were not killed

Fails to acount for the program forking

enhancement - run something like ntpd -d 2>&1 >> /var/log/ntpd.log
to get a log file
Comment 1 SpanKY gentoo-dev 2004-08-20 21:19:40 UTC
1.
openntpd needs a maintainer

2.
i didnt block on purpose since the only files that get overwritten are the manpages ... small details you missed:
          ntp                     openntp
init.d:  ntpd                    openntpd
config:  ntp.conf                ntpd.conf
binary:  /usr/bin/ntpd           /usr/sbin/ntpd

3.
aye, looks like upstream bug ...

4.
like you say, you need root to modify the time ...
besides, i'm sure it's pretty safe ... they seem to use the same principals as openssh and priv seperation:
root@vapier 0 ~ # ps aux | grep /usr/sbin/ntpd
root     30236  0.0  0.1  2796 1244 ?        Ss   00:14   0:00 /usr/sbin/ntpd
ntp      30237  0.0  0.1  2796 1240 ?        S    00:14   0:00 /usr/sbin/ntpd
root@vapier 0 ~ # netstat -napu | grep ntp
udp        0      0 0.0.0.0:33413           0.0.0.0:*                           30237/ntpd
udp        0      0 0.0.0.0:33414           0.0.0.0:*                           30237/ntpd
udp        0      0 0.0.0.0:33415           0.0.0.0:*                           30237/ntpd
udp        0      0 127.0.0.1:123           0.0.0.0:*                           30237/ntpd
notice how only the non-root user ntpd listens to the network ... i havent read the actual code, i'm just guessing by what i see ;)

5.
your init script seems to be out of sync with the one in portage ... the one in portage installs to '/etc/init.d/openntpd', not to '/etc/init.d/ntpd' ... i'm pretty sure that's why the 'stop' option doesnt work ...
as for the logging, i could probably patch the binary to create a pid file and to log its output via syslog
Comment 2 SpanKY gentoo-dev 2004-08-24 14:05:30 UTC
actually, the manpages dont even overwrite each other

added 20040824p to portage, see if that fixes your troubles; if it doesnt, i'd bug the openntpd peeps ;)