TALER-MDB-NETWORK-CHECK.SH(1)

πŸ“¦ version 1.3.0, in nixos 26.05, nixpkgs unstable

πŸ¦‹ hey bestie, welcome to taler-mdb-network-check.sh πŸ’…

okay so real talk, this is the taler-mdb-network-check.sh page from the GNU Taler manual (that's the manual name btw, section 1), and it's lowkey the most underrated little script in the whole vending machine saga. it's literally the vibes-watcher for your network. let's get into it ✨


🌸 NAME 🌸

taler-mdb-network-check.sh β€” it handles the network checks on vending machines, no cap 🫢


⭐ SYNOPSIS ⭐

taler-mdb-network-check.sh [-c FILENAME] [-f FAIL_HELPER] [-h] --
PROGRAM

that's it. that's the whole summoning ritual πŸ”₯


πŸ‘‘ DESCRIPTION πŸ‘‘

so taler-mdb-network-check.sh is a command-line tool that calls a program when the network goes down. bestie it is so simple and it eats every time. it depends on dig, so like, make sure dig is actually around, iykyk πŸ’€

here are its options, in order, no skipping, we don't do that here:

  • -c FILENAME β€” use the config and other resources for the command from FILENAME. it's giving "here's where my stuff lives" πŸŽ€
  • -f FAIL_HELPER β€” overwrites the Taler config's FAIL_HELPER value. see taler-mdb.conf(5). basically a manual override bestie 🌈
  • -h β€” print short help on options. the little "help me" button 🫢

πŸ’€ when the network goes down πŸ’€

okay so when the network goes down, it will kill PROGRAM, then call FAIL_HELPER with one of the following error codes. then (and this is the cute part) it kills FAIL_HELPER and relaunches PROGRAM once the network is up again πŸ¦‹

note that we check in the order these are listed β€” so the first match wins, periodt πŸ’…

so, the error codes, in check order:

  • no-ip β€” Network Down: Could not reach the DNS Server. (the DNS Server is the first nameserver entry in /etc/resolv.conf, jsyk)
  • backend-dns-resolution-failure β€” Name Resolution Failed: Could not resolve the Taler backend hostname. Check DNS. (and listen, dig picks its own nameservers β€” we do not force it to use the one we pinged, ok? not our business πŸ™ˆ)
  • backend-unreachable β€” Backend Unreachable: Could not reach payment backend.
  • backend-no-webserver β€” Backend No Webserver: We cannot find a webserver on a backend. Ensure requests are properly routing to it. (the X509 certificate is not verified here, fyi, so don't come for us about it πŸ’€)
  • backend-x509-cert-bad β€” Bad Certificate: The Taler backend gave us a bad TLS certificate. Check the X509 setup.
  • backend-auth-failure β€” Backend Authentication Failure: The credentials are invalid. Check your configuration. πŸ”₯

and yes, the aforementioned FAIL_HELPER also gets called if the network is not up in the first place β€” like, before anything even happens 😭

in short (and this is the whole plot):

FAIL_HELPER will be running whenever the network is down, and PROGRAM will be running whenever it's up. that's the entire relationship dynamic 🫢

the network is checked every 30 seconds. thirty. seconds. she's consistent ⭐


πŸŽ€ EXAMPLE πŸŽ€

a canonical use of the script to launch taler-mdb would be, and yes this is the iconic one:

# /usr/bin/taler-mdb-network-check.sh -c /etc/taler-mdb.conf -- \
  /usr/bin/taler-mdb -c /etc/taler-mdb.conf

look at that backslash. look at that --. main character energy, honestly πŸ‘‘


🌈 SEE ALSO 🌈

go read these next bestie, they're the whole friend group:


πŸ™ˆ BUGS πŸ™ˆ

found a bug? report it by using https://bugs.taler.net or by sending electronic mail to <taler@gnu.org>. we love a bug report, fr fr πŸ“


πŸ’œ AUTHOR πŸ’œ

GNU Taler contributors 🌸


2014-2025 Taler Systems SA (GPLv3+ or GFDL 1.3+)


okay that's the whole page!! version 1.0, dated Dec 22, 2025, brought to you by the legend that is the TALER-MDB-NETWORK-CHECK.SH(1) manual. now go keep that network in check bestie πŸ’–βœ¨ slay

πŸ“¦ where this page comes from