AuOpenServer(3)

πŸ“¦ version 1.9.5, in fedora 43, fedora 44

✨ AuOpenServer(3) ✨

okay bestie, this one lives in the Library Functions Manual, and it's literally just "how do I actually talk to the audio server" β€” the opening move of every audiolib era. πŸ’–


🌸 NAME 🌸

AuOpenServer β€” connect to audio server


πŸ¦‹ SYNOPSIS πŸ¦‹

#include <audio/audiolib.h>

AuServer *AuOpenServer(servername, num_authproto, authproto,
num_authdata, authdata, ret_status)
    char *servername;
    int num_authproto;
    char *authproto;
    int num_authdata;
    char *authdata;
    char **return_status; /* RETURN */

πŸŽ€ ARGUMENTS πŸŽ€

  • servername β€” the audio server name, bestie. this is the thing that decides which server you're hitting and what communications domain you're rolling up in. it's giving main character energy for the whole connection.
  • num_authproto β€” how long the connection authorization protocol name is. just the length, okay? πŸ’…
  • authproto β€” the actual name of the connection authorization protocol.
  • num_authdata β€” how long the connection authorization data is. again: length only, no cap.
  • authdata β€” the connection authorization data itself.
  • return_status β€” if this is non-NULL and the connection gets refused, it hands you back an error message. 🫢

πŸ’œ DESCRIPTION πŸ’œ

So AuOpenServer does the thing: it creates a connection to the audio server you specified and returns a pointer to an AuServer structure β€” or NULL if it didn't work out, in which case return_status (if it's non-NULL) points at an error message spilling all the tea about why it wasn't successful. 😭

now for the servername lore, because this is where it gets lowkey iconic:

  • if servername is NULL or a pointer to a NUL, AuOpenServer goes and gets the value from the environment. go off, environment variable. ✨
  • servername has the format hostname:port or hostname::port.
  • if a double colon (::) separates the hostname and port number, AuOpenServer connects using DECnet streams.
  • if a single colon (:) separates the hostname and port number, and the hostname is a host machine name, AuOpenServer connects using TCP streams.
  • if a single colon (:) separates the hostname and port number, and the hostname is "unix", AuOpenServer connects using UNIX domain sockets (or Streams).
  • if the hostname isn't specified at all, AuOpenServer uses whatever it believes is the fastest transport. it's picking the fit for you, no notes. πŸ”₯

🌈 SEE ALSO 🌈

  • AuCloseServer
  • AuServerName
  • audiolib β€” Network Audio System C Language Interface

fr fr, that's the whole page β€” every flag, every format, every transport. no crumbs left. πŸ‘‘

and that's a wrap, babe πŸŽ€ this was audiolib β€” housekeeping, version 1.9.5, from the AuOpenServer(3) era. go connect to something. πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from