ASTRIBANK_IS_STARTING(8)
π ASTRIBANK_IS_STARTING π
okay bestie, welcome to the astribank_is_starting page, section 8 of the manual, and no this is not a drill π«Ά
β¨ NAME β¨
astribank_is_starting β mark / check if a Xorcom Astribank (xpp) is starting π¦
πΈ SYNOPSIS πΈ
astribank_is_starting [-d] [-v] [-t timeout] <-a|-r|-w>
astribank_is_starting [-d] [-v]
astribank_is_starting -h
π DESCRIPTION π
So astribank_is_starting is an internal tool β like, it's not for you to play with at parties, it's the thing the various xpp scripts use behind the scenes. What does it do? Two jobs, and honestly it slays at both:
- it marks that there may be an Astribank device currently initializing β¨
- and it checks for that mark π
Technically? The mark is a SysV semaphore. Yes fr fr, a semaphore. We'll get to why in a sec, bestie, don't worry.
π OPTIONS π
-aβ Add. Set the mark. Should return0unless there's an error. Simple as that π-rβ Remove. Reset the mark. Should return0unless there's an error. Cleanup era π§Ή-ttimeoutβ Timeout. Sets the timeout value for the-woption. The default is60seconds. Tick tock β°-wβ Wait. Wait for the mark to be reset. Should return0unless there's an error. Just sitting there, patiently, main character energy π«Ά
Without -a or -r: return 0 if the mark has been set, or a non-zero value otherwise. That's the vibe check right there π
-dβ Print debug information tostderr. For when you need to see everything π-vβ Verbose execution. It's giving "tell me more" π¬-hβ Displays usage message. The classic cry for help π
π¦ FILES π¦
/proc/sysvipc/semβ If set, the astribank should appear there with the ID11211168(0xAB11A0). Naturally the ID β or rather, the usage of a semaphore in the first place β is an implementation detail that may change. So like, don't get attached, bestie π
π NOTES π
astribank_is_starting is used to mark the fact that an Astribank may be currently reenumerating (technically: disconnecting and connecting as a new USB device) after loading the firmware. So the script that loads the firmware, /usr/share/dahdi/xpp_fxloader, uses this utility to set the mark. Iconic behaviour honestly β¨
The mark is reset by /usr/share/dahdi/waitfor_xpds, which is typically run by the DAHDI init script and waits for all Astribanks to finish loading. Teamwork, no cap π€
Q: Why do you use a semaphore?
A: because, unlike the filesystem, it is writable at any given time. Boom. Periodt. π
π BUGS π
Option ordering matters. The-vand-doptions should precede the actions (-a,-rand-w). The-ttimeoutoption should precede the-woption.
like, order matters bestie, don't fight it π
π SEE ALSO π
πΈ AUTHOR πΈ
This manual page was written by Tzafrir Cohen <tzafrir.cohen@xorcom.com>. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 any later version published by the Free Software Foundation.
On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.
k that's the whole page bestie, written 16 August 2009, and yeah, it's the ASTRIBANK_IS_STARTING(8) era and we're obsessed πβ¨π go forth and check your semaphores π¦
π¦ where this page comes from
- debian bookworm: dahdi 1:3.1.0-2
- debian trixie: dahdi 1:3.1.0-2.1
- ubuntu jammy: dahdi 1:3.1.0-2
- ubuntu noble: dahdi 1:3.1.0-2build1
- ubuntu questing: dahdi 1:3.1.0-2.1
- ubuntu resolute: dahdi 1:3.1.0-2.1build1
- ubuntu stonking: dahdi 1:3.4.0-1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms