On Thu 12 Jun 2014 at 10:53:08 +0200, Didier 'OdyX' Raboud wrote:

> Control: tags -1 +moreinfo
> 
> Le jeudi, 12 juin 2014, 09.02:05 Brian Potkin a écrit :
> > The preinst script has a misplaced 'fi' after
> > 
> >   ListenStream=[::1]:$localport
> >   EOF
> > 
> > Shouldn't the statement read
> > 
> >   if .... elif ... else ... fi ?
> 
> The preinst code without the lengthy heredocs is as follows:
> 
>     # If file doesn't exist or if it has two conflicting stanzas
>     if [ ! -f /etc/cups/cupsd-systemd-listen.conf ] || (…) ;\
>     then
>         mkdir -p /etc/cups
>         # cat header
>         if [ -e /etc/cups/cupsd.conf ]; then
>             if grep -q '^\s*Port' /etc/cups/cupsd.conf 2>/dev/null; then
>                 # get Port port
>                 # cat Port
>             elif grep -q '^\s*Listen localhost:' /etc/cups/cupsd.conf 
> 2>/dev/null; then
>                 # get ListenStream port
>                 # cat ListenStream
>             fi    
> <--------------<-----------------------------<--------------|
>         else                                                                  
> |
>             # cat Default                                                     
> |
>         fi                                                                    
> |
>     fi                                                                        
> |
>                                                                               
> |
> Where do you see a problem?                                                   
> |
                                                                                
|
I am assuming that the purpose of "cat default" is to ensure the writing        
|
of ListenStream lines to cupsd-systemd-listen.conf when cupsd.conf does         
|
not contain them. However, with "Listen localhost:631" and "Port 631"           
|
both commented out cupsd-systemd-listen.conf has only the content of the        
|
heredoc.                                                                        
|
                                                                                
|
I see the problem as this 
--------->----------------------------->--------------|

Moving "fi" to after "cat default" solves the problem for me.

     # If file doesn't exist or if it has two conflicting stanzas
     if [ ! -f /etc/cups/cupsd-systemd-listen.conf ] || (…) ;\
     then
         mkdir -p /etc/cups
         # cat header
         if [ -e /etc/cups/cupsd.conf ]; then
             if grep -q '^\s*Port' /etc/cups/cupsd.conf 2>/dev/null; then
                 # get Port port
                 # cat Port
             elif grep -q '^\s*Listen localhost:' /etc/cups/cupsd.conf 
2>/dev/null; then
                 # get ListenStream port
                 # cat ListenStream
             else
             # cat Default
             fi
         fi
     fi

Regards,

Brian.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to