---
name: "astribank_is_starting"
section: "8"
platform: "linux"
package: "dahdi"
version: "1:3.1.0-2.1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/astribank_is_starting"
---

# astribank\_is\_starting(8)

Mark / check is a Xorcom Astribank (xpp) is starting

## NAME

astribank\_is\_starting - Mark / check is 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

**astribank\_is\_starting** is an internal tool used by various xpp scripts to mark that there may be an Astribank device currently initializing, and to check for that mark.

Technically the mark is a SysV semaphore.

## OPTIONS

- **-a**

  **Add.** Set the mark. Should return 0 unless there's an error.

- **-r**

  **Remove.** Reset the mark. Should return 0 unless there's an error.

- **-t***timeout*

  **Timeout.** Set the timeout value for the **-w** option. Default is 60 seconds.

- **-w**

  **Wait.** Wait for mark to be reset. Should return 0 unless there's an error.

Without -a or -r: return 0 if the mark has been set, or a non-zero value otherwise.

- **-d**

  Print debug information to stderr.

- **-v**

  Verbose execution.

- **-h**

  Displays usage message.

## FILES

**/proc/sysvipc/sem**

If set, the astribank should appear there with the ID 11211168 (0xAB11A0). Naturally the ID (or rather, the usage of a semaphore in the first place) is an implementation detail that may change.

## NOTES

**astribank\_is\_starting** is used to mark the fact that an Astribank may be currently reenumerating (technically: distonnecting and connecting as a new USB device) after loading the firmware. Thus the script that loads the firmware  (/usr/share/dahdi/xpp\_fxloader) uses this utility to set the mark.

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.

Q: Why do you use a semaphore?

A: because, unlike the filesystem, it is writable at any given time.

## BUGS

Option ordering matter. The **-v** and **-d** options should precede the actions (**-a**, **-r** and **-w**). The **-t***timeout* option should precede the **-w** option.

## SEE ALSO

semctl(3)

## 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.
