<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=US-ASCII">
<META content="MSHTML 6.00.2800.1586" name=GENERATOR></HEAD>
<BODY id=role_body style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Arial"
bottomMargin=7 leftMargin=7 topMargin=7 rightMargin=7><FONT id=role_document
face=Arial color=#000000 size=2>
<DIV>
<DIV>In a message dated 1/6/2007 5:55:02 P.M. Central Standard Time,
pere@hungry.com writes:</DIV>
<BLOCKQUOTE
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: blue 2px solid"><FONT
style="BACKGROUND-COLOR: transparent" face=Arial color=#000000 size=2><BR>I
read throught this bug, but fail to understand it. Can you please<BR>try
to rephrase it? Without understanding it, I'm not sure where to<BR>start
to try to solve it.<BR><BR>Friendly,<BR>-- <BR>Petter Reinholdtsen<BR>One of
the sysvinit maintainers</FONT></BLOCKQUOTE></DIV>
<DIV></DIV>
<DIV>Yes, I will try. To see the problem get the latest sysvinit and
cd to the src directory and run 'make halt'. Look at the size of the
binary file halt. Then look at the size of the binary file
/sbin/halt that comes with etch. There you will see /sbin/halt is
smaller. The reason it is smaller is that ifdown.c in /sbin/halt is
made into a no-op or blank or stub function and it doesn't bring the network
interface down at all no matter if </DIV>
<DIV>'-i' is present or '-i' is not present on the halt command
line. The version in the sysvinit src directory is larger and it
does work properly.</DIV>
<DIV> </DIV>
<DIV>I will write this again in another way to help with language translation
efforts.</DIV>
<DIV> </DIV>
<DIV>At the present time, the ifdown.c module in the halt program in the
sysvinit set does not get compiled in to the halt binary that is distributed
with etch. However, the usage and man pages write that it is there and it
does work. If you download the sysvinit source and compile it with 'make
halt' in the src directory, it does get compiled in, that binary is 2K larger
than than the one distributed with etch, and it does do the ifdown function
properly.</DIV>
<DIV> </DIV>
<DIV>I have an idea about how this happened:</DIV>
<DIV> </DIV>
<DIV>The problem began some time ago as a result of a fix notice in the
change log -- because. on one of the *bsd distros the ifdown.c wasn't
appropriate for *bsd, and so in a 'fix' listed in the changelog to
make it a do-nothing function but just on *bsd. However,
somehow, this crippled version wrongly is sent out with linux too, that is the
problem.</DIV>
<DIV> </DIV>
<DIV>To solve it, take a look at the ifdown.c in the 'halt' sysvinit
program. Make sure that in the Debian and other Linux distros, the ifdown
function actually is compiled in and that it works.</DIV>
<DIV> </DIV>
<DIV>To check, make sure a system with the network works. Then
do</DIV>
<DIV> </DIV>
<DIV>ifconfig</DIV>
<DIV>halt -i -w</DIV>
<DIV>ifconfig</DIV>
<DIV> </DIV>
<DIV>all interfaces should be 'DOWN' on the second ifconfig if you have the
right version of halt. The wrong version with etch will not change
the state of the network interfaces.</DIV>
<DIV> </DIV>
<DIV>Thanks all!</DIV>
<DIV> </DIV>
<DIV>Harry Coin</DIV>
<DIV> </DIV></FONT></BODY></HTML>