From owner-freebsd-stable Mon Sep 18 6:28: 6 2000 Delivered-To: freebsd-stable@freebsd.org Received: from oskar.nanoteq.co.za (oskar.nanoteq.co.za [196.37.91.66]) by hub.freebsd.org (Postfix) with ESMTP id 0432D37B422; Mon, 18 Sep 2000 06:27:45 -0700 (PDT) Received: from jarrow.dev.nanoteq.co.za (jarrow [196.37.91.33]) by oskar.nanoteq.co.za (8.9.3/8.9.0) with ESMTP id PAA09239; Mon, 18 Sep 2000 15:30:05 +0200 (SAT) Message-ID: X-Mailer: XFMail 1.4.0 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Date: Mon, 18 Sep 2000 15:26:10 +0200 (SAST) Reply-To: rbezuide@oskar.nanoteq.co.za From: Reinier Bezuidenhout To: freebsd-stable@freebsd.org, freebsd-hackers@freebsd.org, jhb@freebsd.org Subject: libc causes sylogd misbehaviour - fix included Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Hi .. Sorry for the cross mail but I know there are a few people that suffer from this problem and would like a fix. Quick problem description: When using remote logging, on the server where the logs are written, syslogd tends to stop logging any more info at some stage. This also prevents you to su (if you use a console and it is not plugged in). If you kill syslogd and restart it again .. the first attempt fails when syslogd wants to open the console. Sometimes only a reboot solves the problem. It was possible for me to recreate this problem readily by denying icmp port unreachable packets from the non existing DNS server, causing syslogd to get stuck in cvthname->..->..->poll in libc. If I leave syslogd in this state for a minute or so, and then remove the packet filter, syslogd NEVER recovers and nothing is logged anymore. This condition also seams to occur every now and then (once a day) on a working system without packet filtering. Solution: In libc/net changes were made to res_send.c - specifically in revision 1.32 preventing a deadlock (ever loop) in the name resolution if a SIGALRM was received during that time. This was MFC'ed to 4-stable but not 3-stable (understandably). I made a diff between 1.31 and 1.32 of res_send.c - applied it to my RELENG_3 libc (1.25.2.1) and recompiled libc. When trying to recreate the above error, after the 1 minute deny of icmp's, and removing the rule, syslogd recovers and continues to log without a problem. Conclusion: Is it possible for someone the MFC rev 1.31->1.32 of libc/net/res_send.c to the 3-STABLE ?? And while doing that ... would you be so kind as to also add the "-n" option to disable DNS lookups which is in current at the moment ?? I would really appreciate it ... Thanks Reinier ################################################################### # # # R.N. Bezuidenhout NetSeq Firewall # # rbezuide@oskar.nanoteq.co.za http://www.nanoteq.co.za # # # ################################################################### ---------------------------------- Date: 18-Sep-00 Time: 15:09:17 This message was sent by XFMail ---------------------------------- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message