[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1071596: marked as done (apache2: envvars evaluates string in conditional instead of testing for empty string)



Your message dated Wed, 22 May 2024 13:25:14 -0700
with message-id <[🔎] CAKGiyJtoCrjU11cfEyZX+NC+nwTr=xEnUtriqHP2igcwoud-2w@mail.gmail.com>
and subject line Re: Bug#1071596: apache2: envvars evaluates string in conditional instead of testing for empty string
has caused the Debian Bug report #1071596,
regarding apache2: envvars evaluates string in conditional instead of testing for empty string
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1071596: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1071596
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: apache2
Version: 2.4.59-1~deb12u1
Severity: normal

Dear Maintainer,

`envvars` evaluates string in conditional instead of testing for empty string.

`apachectl` calls `envvars` which shows a syntax error despite working:

 root@nodeo:/etc/letsencrypt# apachectl configtest
 /usr/sbin/apachectl: 6: [: /etc/apache2: unexpected operator
 Syntax OK

If I change this line in `envvars`:

 if [ "${APACHE_CONFDIR}" == "" ]; then
	 export APACHE_CONFDIR=/etc/apache2
 fi

to this:

 if [ -z ${APACHE_CONFDIR} ]; then
	 export APACHE_CONFDIR=/etc/apache2
 fi

... then it works.

It's trying to evaluate `/etc/apache2` as a command?  Weird.

PATH seems totally normal.

Mark

-- Package-specific info:

-- System Information:
Debian Release: 12.5
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 6.1.0-21-amd64 (SMP w/1 CPU thread; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages apache2 depends on:
ii  apache2-bin                2.4.59-1~deb12u1
ii  apache2-data               2.4.59-1~deb12u1
ii  apache2-utils              2.4.59-1~deb12u1
ii  init-system-helpers        1.65.2
ii  lsb-base                   11.6
ii  media-types                10.0.0
ii  perl                       5.36.0-7+deb12u1
ii  procps                     2:4.0.2-3
ii  sysvinit-utils [lsb-base]  3.06-4

Versions of packages apache2 recommends:
ii  ssl-cert  1.1.2

Versions of packages apache2 suggests:
pn  apache2-doc                                      <none>
pn  apache2-suexec-pristine | apache2-suexec-custom  <none>
ii  chromium [www-browser]                           125.0.6422.60-1~deb12u1

Versions of packages apache2-bin depends on:
ii  libapr1                  1.7.2-3
ii  libaprutil1              1.6.3-1
ii  libaprutil1-dbd-sqlite3  1.6.3-1
ii  libaprutil1-ldap         1.6.3-1
ii  libbrotli1               1.0.9-2+b6
ii  libc6                    2.36-9+deb12u7
ii  libcrypt1                1:4.4.33-2
ii  libcurl4                 7.88.1-10+deb12u5
ii  libjansson4              2.14-2
ii  libldap-2.5-0            2.5.13+dfsg-5
ii  liblua5.3-0              5.3.6-2
ii  libnghttp2-14            1.52.0-1+deb12u1
ii  libpcre2-8-0             10.42-1
ii  libssl3                  3.0.11-1~deb12u2
ii  libxml2                  2.9.14+dfsg-1.3~deb12u1
ii  perl                     5.36.0-7+deb12u1
ii  zlib1g                   1:1.2.13.dfsg-1

Versions of packages apache2-bin suggests:
pn  apache2-doc                                      <none>
pn  apache2-suexec-pristine | apache2-suexec-custom  <none>
ii  chromium [www-browser]                           125.0.6422.60-1~deb12u1

Versions of packages apache2 is related to:
ii  apache2      2.4.59-1~deb12u1
ii  apache2-bin  2.4.59-1~deb12u1

-- Configuration Files:
/etc/apache2/apache2.conf changed:
DefaultRuntimeDir ${APACHE_RUN_DIR}
PidFile ${APACHE_PID_FILE}
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
HostnameLookups Off
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf
Include ports.conf
<Directory />
	Options FollowSymLinks
	AllowOverride None
	Require all denied
</Directory>
<Directory /usr/share>
	AllowOverride None
	Require all granted
</Directory>
<Directory /var/www/>
	Options Indexes FollowSymLinks
	AllowOverride None
	Require all granted
</Directory>
AccessFileName .htaccess
<FilesMatch "^\.ht">
	Require all denied
</FilesMatch>
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
IncludeOptional conf-enabled/*.conf
IncludeOptional sites-enabled/*.conf

/etc/apache2/envvars changed:
unset HOME
if [ -z "${APACHE_CONFDIR}" ]; then
	export APACHE_CONFDIR=/etc/apache2
fi
if [ "${APACHE_CONFDIR##/etc/apache2-}" != "${APACHE_CONFDIR}" ] ; then
	SUFFIX="-${APACHE_CONFDIR##/etc/apache2-}"
else
	SUFFIX=
fi
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
export APACHE_PID_FILE=/var/run/apache2$SUFFIX/apache2.pid
export APACHE_RUN_DIR=/var/run/apache2$SUFFIX
export APACHE_LOCK_DIR=/var/lock/apache2$SUFFIX
export APACHE_LOG_DIR=/var/log/apache2$SUFFIX
export LANG=C
export LANG


-- no debconf information

--- End Message ---
--- Begin Message ---
Weird.  I'll have to reinstall apache2.  Maybe I edited it long ago to
debug it, forgot a space, and it got stuck by debconf picking my
version on upgrades instead of the package maintainer's.  Thanks.


On Wed, May 22, 2024 at 12:38 PM Stefan Fritsch <sf@sfritsch.de> wrote:
>
> Hi Mark,
>
> Am 21.05.24 um 22:30 schrieb Mark Hedges:
> > Package: apache2
> > Version: 2.4.59-1~deb12u1
> > Severity: normal
> >
> > Dear Maintainer,
> >
> > `envvars` evaluates string in conditional instead of testing for empty string.
> >
> > `apachectl` calls `envvars` which shows a syntax error despite working:
> >
> >   root@nodeo:/etc/letsencrypt# apachectl configtest
> >   /usr/sbin/apachectl: 6: [: /etc/apache2: unexpected operator
> >   Syntax OK
> >
> > If I change this line in `envvars`:
> >
> >   if [ "${APACHE_CONFDIR}" == "" ]; then
> >        export APACHE_CONFDIR=/etc/apache2
> >   fi
>
> This snippet is not in the original file from the apache2 package.
> Compare to
> https://salsa.debian.org/apache-team/apache2/-/blob/master/debian/config-dir/envvars?ref_type=heads
>
> Either you or some package or script has changed the file. If you have
> etckeeper you could dig in the logs.
>
> Cheers,
> Stefan
>
> >
> > to this:
> >
> >   if [ -z ${APACHE_CONFDIR} ]; then
> >        export APACHE_CONFDIR=/etc/apache2
> >   fi
> >
> > ... then it works.
> >
> > It's trying to evaluate `/etc/apache2` as a command?  Weird.
> >
> > PATH seems totally normal.
> >
> > Mark
> >
> > -- Package-specific info:
> >
> > -- System Information:
> > Debian Release: 12.5
> >    APT prefers stable-updates
> >    APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
> > Architecture: amd64 (x86_64)
> >
> > Kernel: Linux 6.1.0-21-amd64 (SMP w/1 CPU thread; PREEMPT)
> > Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
> > Shell: /bin/sh linked to /usr/bin/dash
> > Init: systemd (via /run/systemd/system)
> > LSM: AppArmor: enabled
> >
> > Versions of packages apache2 depends on:
> > ii  apache2-bin                2.4.59-1~deb12u1
> > ii  apache2-data               2.4.59-1~deb12u1
> > ii  apache2-utils              2.4.59-1~deb12u1
> > ii  init-system-helpers        1.65.2
> > ii  lsb-base                   11.6
> > ii  media-types                10.0.0
> > ii  perl                       5.36.0-7+deb12u1
> > ii  procps                     2:4.0.2-3
> > ii  sysvinit-utils [lsb-base]  3.06-4
> >
> > Versions of packages apache2 recommends:
> > ii  ssl-cert  1.1.2
> >
> > Versions of packages apache2 suggests:
> > pn  apache2-doc                                      <none>
> > pn  apache2-suexec-pristine | apache2-suexec-custom  <none>
> > ii  chromium [www-browser]                           125.0.6422.60-1~deb12u1
> >
> > Versions of packages apache2-bin depends on:
> > ii  libapr1                  1.7.2-3
> > ii  libaprutil1              1.6.3-1
> > ii  libaprutil1-dbd-sqlite3  1.6.3-1
> > ii  libaprutil1-ldap         1.6.3-1
> > ii  libbrotli1               1.0.9-2+b6
> > ii  libc6                    2.36-9+deb12u7
> > ii  libcrypt1                1:4.4.33-2
> > ii  libcurl4                 7.88.1-10+deb12u5
> > ii  libjansson4              2.14-2
> > ii  libldap-2.5-0            2.5.13+dfsg-5
> > ii  liblua5.3-0              5.3.6-2
> > ii  libnghttp2-14            1.52.0-1+deb12u1
> > ii  libpcre2-8-0             10.42-1
> > ii  libssl3                  3.0.11-1~deb12u2
> > ii  libxml2                  2.9.14+dfsg-1.3~deb12u1
> > ii  perl                     5.36.0-7+deb12u1
> > ii  zlib1g                   1:1.2.13.dfsg-1
> >
> > Versions of packages apache2-bin suggests:
> > pn  apache2-doc                                      <none>
> > pn  apache2-suexec-pristine | apache2-suexec-custom  <none>
> > ii  chromium [www-browser]                           125.0.6422.60-1~deb12u1
> >
> > Versions of packages apache2 is related to:
> > ii  apache2      2.4.59-1~deb12u1
> > ii  apache2-bin  2.4.59-1~deb12u1
> >
> > -- Configuration Files:
> > /etc/apache2/apache2.conf changed:
> > DefaultRuntimeDir ${APACHE_RUN_DIR}
> > PidFile ${APACHE_PID_FILE}
> > Timeout 300
> > KeepAlive On
> > MaxKeepAliveRequests 100
> > KeepAliveTimeout 5
> > User ${APACHE_RUN_USER}
> > Group ${APACHE_RUN_GROUP}
> > HostnameLookups Off
> > ErrorLog ${APACHE_LOG_DIR}/error.log
> > LogLevel warn
> > IncludeOptional mods-enabled/*.load
> > IncludeOptional mods-enabled/*.conf
> > Include ports.conf
> > <Directory />
> >       Options FollowSymLinks
> >       AllowOverride None
> >       Require all denied
> > </Directory>
> > <Directory /usr/share>
> >       AllowOverride None
> >       Require all granted
> > </Directory>
> > <Directory /var/www/>
> >       Options Indexes FollowSymLinks
> >       AllowOverride None
> >       Require all granted
> > </Directory>
> > AccessFileName .htaccess
> > <FilesMatch "^\.ht">
> >       Require all denied
> > </FilesMatch>
> > LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
> > LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
> > LogFormat "%h %l %u %t \"%r\" %>s %O" common
> > LogFormat "%{Referer}i -> %U" referer
> > LogFormat "%{User-agent}i" agent
> > IncludeOptional conf-enabled/*.conf
> > IncludeOptional sites-enabled/*.conf
> >
> > /etc/apache2/envvars changed:
> > unset HOME
> > if [ -z "${APACHE_CONFDIR}" ]; then
> >       export APACHE_CONFDIR=/etc/apache2
> > fi
> > if [ "${APACHE_CONFDIR##/etc/apache2-}" != "${APACHE_CONFDIR}" ] ; then
> >       SUFFIX="-${APACHE_CONFDIR##/etc/apache2-}"
> > else
> >       SUFFIX=
> > fi
> > export APACHE_RUN_USER=www-data
> > export APACHE_RUN_GROUP=www-data
> > export APACHE_PID_FILE=/var/run/apache2$SUFFIX/apache2.pid
> > export APACHE_RUN_DIR=/var/run/apache2$SUFFIX
> > export APACHE_LOCK_DIR=/var/lock/apache2$SUFFIX
> > export APACHE_LOG_DIR=/var/log/apache2$SUFFIX
> > export LANG=C
> > export LANG
> >
> >
> > -- no debconf information
> >

--- End Message ---

Reply to: