TLSPOOL_PING(3)

πŸ“¦ version 0.9.7, in nixos 26.05

πŸ’… TLSPOOL_PING

okay bestie, welcome to tlspool_ping(3) β€” a Library Call, no cap. She lives in section 3 of the manual and she's here to make your program and the TLS Pool officially besties πŸ’–


✨ SYNOPSIS ✨

#include <tlspool/commands.h>
#include <tlspool/starttls.h>

int tlspool_ping (pingpool_t *pingdata);

πŸ¦‹ DESCRIPTION πŸ¦‹

so like, tlspool_ping() is the ✨vibe check✨ function. She negotiates the TLS Pool version and a whole list of supported features with the TLS Pool itself 🫢

The way it works: she sends over the settings of your local program β€” and those settings must be set up in pingdata before you even call her, okay? Then when the call returns, the structure gets updated with whatever the TLS Pool could make out of it. it's giving conversation. it's giving mutual understanding πŸ’…

The whole point of handing over initial data is to offer the TLS Pool what the client can do β€” which is exactly why the client has to fill it in. no delegating, bestie πŸ™ˆ A genuinely good procedure to do this is:

pingpool_t pp;

bzero (&pp, sizeof (pp));
strcpy (pp.YYYYMMDD_producer, TLSPOOL_IDENTITY_V2);
pp.facilities = PIOF_FACILITY_ALL_CURRENT;

When &pp gets supplied to the tlspool_ping() function, the TLS Pool will replace the field YYYYMMDD_producer with the value that determines how it interprets what it got πŸ‘‘ And that returned version? Yeah, that's what tells you how to interpret the returned facilities. iykyk.

The facilities as returned? Those you can lowkey rely on β€” they're implemented in the TLS Pool and permitted by its configuration πŸŽ€ But heads up: administrator control can remove features from the implementation, so be careful and always check what to use. fr fr, don't skip the check πŸ’€

Currently defined flags that can be found in features are:

  • PIOF_FACILITY_STARTTLS β€” indicates support for the tlspool_starttls(3) API call. slay πŸ’–
  • PIOF_FACILITY_ALL_CURRENT β€” indicates all flags that are currently implemented in the code base that includes this value. But watch out bestie: note that the value may differ between independently compiled modules, even when their YYYYMMDD_producer values are the same. sneaky but true 🌸
  • PIOF_FACILITY_STARTGSS β€” indicates support for the tlspool_startgss(3) API call β€” but note that this has not yet been defined or implemented, so current versions of the API will never return this facility, and it is not included in PIOF_FACILITY_ALL_CURRENT so you can recognize that fact at compile time πŸ”₯
  • PIOF_FACILITY_STARTSSH β€” indicates support for the tlspool_startssh(3) API call β€” but note that this has not yet been defined or implemented, so current versions of the API will never return this facility, and it is not included in PIOF_FACILITY_ALL_CURRENT so you can recognize that fact at compile time ⭐

In light of future compatibility, the intention is to continue to support this operation without incompatible changes in the future. she's in it for the long haul πŸ’œ


🌈 RETURN VALUE 🌈

The function returns 0 on success ✨ If an error occurs, the function returns -1 and errno is set appropriately πŸ™ˆ


πŸŽ€ AUTHOR πŸŽ€

Written by Rick van Rein of OpenFortress.nl, for the ARPA2.net project. iconic behavior, honestly πŸ‘‘


πŸ“ REPORTING BUGS πŸ“

For any discussion β€” including about bugs β€” please use the mailing list found on http://lists.arpa2.org/mailman/listinfo/tls-pool πŸ¦‹

Please read the software distribution's README, INSTALL and TODO files for information about the tlspool-daemon implementation status. yes bestie, actually read them πŸ’…


Copyright Β© 2015 Rick van Rein, ARPA2.net.

ARPA2 is funded from InternetWide.org, which in turns receives donations from various funding sources with an interest in a private and secure Internet that gives users control over their online presence. This particular project has been sponsored in part by NCSC. love that for them πŸ’–


⭐ SEE ALSO ⭐

The configuration file options allow_facilities and deny_facilities influence the returned facilities πŸ‘€

The TLS Pool API is documented in the include file <tlspool/commands.h> and <tlspool/starttls.h> for C, and the tlspool.py module for Python 🐍

Online resources may be found on the project home page, http://tlspool.arpa2.net 🌸


k bye bestie, go ping some pools πŸ’…βœ¨ β€” with love from ARPA2.net, November 2015, and this whole page is literally TLSPOOL_PING(3) 🫢

πŸ“¦ where this page comes from