talkd uses obsolete /etc/inetd.conf

Bug #250971 reported by Norman Ramsey
24
This bug affects 2 people
Affects Status Importance Assigned to Milestone
netkit-ntalk (Debian)
Fix Released
Unknown
netkit-ntalk (Ubuntu)
Fix Released
Wishlist
Unassigned
Nominated for Karmic by genepool

Bug Description

Binary package hint: talkd

Two problems:

1. The talkd package puts its inetd info into /etc/inetd.conf instead of /etc/inetd.conf.d

2. The info itself is incorrectly formatted for the inetd that talkd depends on: talkd is using
a 'user.group' format and inet expects user only.

I also vaguely remember a permissions problem but I can't be sure of it.

Tags: grave
Revision history for this message
Marcus Asshauer (mcas) wrote :

Thank you for reporting this bug. Please add your ubuntu version and the output of apt-cache policy talkd

Changed in netkit-ntalk:
status: New → Incomplete
Revision history for this message
Norman Ramsey (nr-cs) wrote :

Ubuntu version is 8.04 LTS.

Output of apt-cache policy talkd is:

talkd:
  Installed: 0.17-13
  Candidate: 0.17-13
  Version table:
 *** 0.17-13 0
        500 http://us.archive.ubuntu.com hardy/universe Packages
        100 /var/lib/dpkg/status

Daniel T Chen (crimsun)
Changed in netkit-ntalk:
importance: Undecided → Wishlist
status: Incomplete → Confirmed
Revision history for this message
David Kelly (davidkelly999) wrote :

Talkd does not seem to use the proper settings in inetd.conf. I believe it should use 'udp4' rather than 'udp'. Changing this and adding the 'nobody' to the tty group seems to fix the permissions issues. This is for talkd 0.17-13 on Ubuntu 9.04 (I also experience the same issues before upgrading to Jaunty)

Revision history for this message
David Kelly (davidkelly999) wrote :

Here is a patch to correct the permissions issues..

Revision history for this message
Iain Lane (laney) wrote :

What is the visible effect of this problem? If the changes are just cosmetic/style then you should forward back to Debian, see https://wiki.ubuntu.com/Debian/Bugs for more information.

Revision history for this message
David Kelly (davidkelly999) wrote :

The effect is that the talk client will not be able to connect to talkd without these changes. Talk clients receive "connection refused" error messages because inetd.conf is either not updated by the scripts or it is updated with the incorrect arguments. Ideally it would be nice to have it just work after installation without having to mess with the configuration files.

Revision history for this message
James Westby (james-w) wrote :

I don't think adding the "nobody" user to any groups is a good idea. Is that
a critical part of the change? If so then I think we need another way to make
this work.

Thanks,

James

Revision history for this message
David Kelly (davidkelly999) wrote :

It doesn't necessarily have to run as nobody - the critical part is that talkd has to have access to the TTY devices in order to work. Do you think a new user should be created for talkd, then have that new user added to the TTY group?

Revision history for this message
James Westby (james-w) wrote : Re: [Bug 250971] Re: talkd uses obsolete /etc/inetd.conf

On Sat, 2009-04-18 at 18:49 +0000, David Kelly wrote:
> It doesn't necessarily have to run as nobody - the critical part is that
> talkd has to have access to the TTY devices in order to work. Do you
> think a new user should be created for talkd, then have that new user
> added to the TTY group?

That's certainly better than giving more access to 'nobody'.

Thanks,

James

Revision history for this message
David Kelly (davidkelly999) wrote :

This new patch creates a user called "talkd" with the proper group access. It also updates inetd.conf to the correct format. Any additional feedback and suggestions are welcome.

Revision history for this message
Scott Kitterman (kitterman) wrote :

This should get uploaded to jaunty-proposed and karmic after sponsor review.

Revision history for this message
newur (newur) wrote :

Hey, how do I use this patch?

Thanks for all help.

Revision history for this message
genepool (genepool99) wrote :

Got talkd working using the patch(s) on Jaunty 32-bit Desktop. Does not work on stock Jaunty 32-bit Server. I just get the "Checking for invitation on caller's machine" problem.
Newur: read the wiki (https://wiki.ubuntu.com/UbuntuPackagingGuide/BuildFromDebdiff?highlight=%28debdiff%29) on how to use debdiff patch files.

Revision history for this message
David Kelly (davidkelly999) wrote :

I installed Jaunty 32 server on a computer to test it it out and corrected an error in one of the scripts which may have been preventing it from working properly. I also noticed that inetd didn't start right away after installing, so I had to start it manually with 'sudo /etc/init.d/inetutils-inetd start'. I was able to get it working with these two things. Please let me know how it works. The new debdiff is attached.

Revision history for this message
genepool (genepool99) wrote :

OK, I removed the old talkd package that was not working under 32-bit server with 'sudo apt-get purge talkd'. Then I used the new patch, recompiled and installed. After install, I restarted the inetd. It still does not work, although now I get a new error: [Your party is not logged on] and a few seconds later [Trying to connect to your party's talk daemon]. I have tried "talking" to myself as well as other users. I have also tried running talk with root permissions. When running 'netstat -tua' talkd and ntalk appear in the udp list. During compile I got a few warnings, so I have attached the compiler output. Are other files helpful for debugging?

Revision history for this message
David Kelly (davidkelly999) wrote :

Strange. Could you please post the talkd entry from /etc/passwd, the tty entry from /etc/group, and the file permissions of the tty you are logged into while trying to talk (pointed to by 'tty' command). Also please try running 'mesg y' on each end? Thanks!

Revision history for this message
genepool (genepool99) wrote :

I tried 'mesg' on both ends and it returns 'is y'. Here is the info requested:

/etc/passwd:
talkd:x:109:5::/nonexistent:/bin/false

/etc/group:
tty:x:5:nobody,talkd,administrator

administrator@cctv:/dev/pts$ ls -l
total 0
crw--w---- 1 administrator tty 136, 0 Jun 27 14:43 0
crw--w---- 1 administrator tty 136, 1 Jun 27 18:19 1

Revision history for this message
Sebastien Bacher (seb128) wrote :

The change doesn't seem ubuntu specific could you send it to debian?

Revision history for this message
Alessio Treglia (quadrispro) wrote :

Debian solved this by adding a dependency on openbsd-inetd.

I requested a sync (bug #416416) which will close this.

Changed in netkit-ntalk (Ubuntu):
status: Confirmed → Triaged
Changed in netkit-ntalk (Debian):
status: Unknown → Fix Released
Revision history for this message
Alessio Treglia (quadrispro) wrote :

netkit-ntalk (0.17-14) unstable; urgency=low

  * Depend only on openbsd-inetd since inetutils-inetd does not
    support 'user.group' notation, and 'tty' group is required.
    (Closes: #532749)
  * Bumped Standards-Version to 3.8.2, no change.
  * Made the package lintian clean again.
  * Moved to debhelper compat 5.

 -- Alessio Treglia <email address hidden> Thu, 20 Aug 2009 14:47:08 +0100

Changed in netkit-ntalk (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
leet_linux_user (christopher-lemire) wrote :

This bug still persists, and I am using Maverick 10.10

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.