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

Bug#952665: debian-edu-config: Don't do unnecessary wget to the internet



Hi,

On  Do 27 Feb 2020 08:02:00 CET, Mike Gabriel wrote:

Package: debian-edu-config
Version: 2.11.15

The dc=skole object in LDAP can reference a Firefox/Chromium default homepage in its labeledURI field. If this URI points to some school homepage on the internet, we observe bad system logon performance in computer labs.

While looking into this, I discovered that in such cases the script share/debian-edu-config/tools/show-welcome-webpage does unnecessary wgets to the internet.

In this code section...

```
GETDEFAULTHOMEPAGE=$(/usr/share/debian-edu-config/tools/get-default-homepage || true)

if [ "$GETDEFAULTHOMEPAGE" ] &&
echo "$PROFILE" | egrep -q 'Main-Server|Workstation|Roaming-Workstation|LTSP-Server|Minimal' ; then
    for lang in $(echo $LANGCODE | tr : " "); do
        if wget -q -O /dev/null ${GETDEFAULTHOMEPAGE}index.html.$lang ; then
            welcomeurl="${GETDEFAULTHOMEPAGE}index.html.$lang"
            break
        else
            welcomeurl=$GETDEFAULTHOMEPAGE || true
        fi
    done
else
    welcomeurl=http://www.skolelinux.org/
fi
```

... the wget to ${GETDEFAULTHOMEPAGE}index.html.$lang only makes sense if the queried host is www or www.intern. The LANGCODE based query is a very specific semantic provided on Debian Edu's main server for delivering localized welcome pages, but it is not at all a common thing for other websites.

Furthermore, I wonder if the show-welcome-page script can't be even more optimized so that this wget on every login could be avoided entirely.

Suggestion: instead of storing the <proto>://<host>/index.html.LANGCODE URL in $HOME/.debian-edu/welcome-page-shown", we could also store the value retrieved via get-default-homepage (without appended LANGCODE) and be happy with that.

Greets,
Mike

The host check can be done similar to this commit (in a script that disables the welcome page on roaming workstations for us):
https://code.it-zukunft-schule.de/cgit/itzks-systems/commit/?id=3f2758333c2085e86622ca145a538cabc34a96d7

With that, the LANGCODE lookups are limited to TJENER. Doing these on every login is also questionable, but it fixes the performance drop on the remote webserver during computer lab logins, if another labeledURI is set in LDAP's dc=skole object.

Mike
--

DAS-NETZWERKTEAM
c\o Technik- und Ökologiezentrum Eckernförde
Mike Gabriel, Marienthaler str. 17, 24340 Eckernförde
mobile: +49 (1520) 1976 148
landline: +49 (4351) 850 8940

GnuPG Fingerprint: 9BFB AEE8 6C0A A5FF BF22  0782 9AF4 6B30 2577 1B31
mail: mike.gabriel@das-netzwerkteam.de, http://das-netzwerkteam.de

Attachment: pgpFGNtNADEO6.pgp
Description: Digitale PGP-Signatur


Reply to: