BPSOURCE(1)

πŸ“¦ version 3.2.1, in ubuntu jammy

πŸ’– BPSOURCE β€” the Bundle Protocol transmission test shell, bestie πŸ’–

okay so this is bpsource, from the BP executables manual section (that's section 1, for the girlies keeping track πŸ“–βœ¨).


🌸 NAME 🌸

bpsource β€” literally the Bundle Protocol transmission test shell. that's it. that's the vibe. πŸ¦‹


✨ SYNOPSIS ✨

bpsource destinationEndpointId ['text'] [-tTTL]

πŸ’… DESCRIPTION πŸ’…

so here's the tea, bestie. bpsource has two modes and both of them are iconic in their own way. 🫢

when you hand it some text: it just... uses Bundle Protocol to send that text over to a counterpart bpsink application task that's already opened the BP endpoint identified by destinationEndpointId, and then it peaces out. done. no notes. πŸ’€

when you don't hand it text: it gives you an interactive "shell" for testing Bundle Protocol data transmission, and honestly? main character energy. here's the whole routine:

  1. bpsource prints a prompt string (": ") to stdout πŸŽ€
  2. it accepts a string of text from stdin
  3. it uses Bundle Protocol to send that string to a counterpart bpsink application task that has opened the BP endpoint identified by destinationEndpointId
  4. it prints another prompt string
  5. and so on, forever, like a group chat that never sleeps ✨

and to terminate the program, you enter a string consisting of a single exclamation point (!) character. that's the escape hatch, periodt.

now about TTL β€” it indicates the number of seconds the bundles may remain in the network, undelivered, before they are automatically destroyed. lowkey important!! if you omit it, TTL defaults to 300 seconds. ⏳

and some facts you should know, no cap: the source endpoint ID for each bundle sent by bpsource is the null endpoint ID, i.e., the bundles are anonymous πŸ™ˆ. all bundles are sent standard priority with no custody transfer and no status reports requested. it's giving "no strings attached" fr fr.


πŸŽ€ EXIT STATUS πŸŽ€

  • "0" β€” bpsource has terminated. any problems encountered during operation will be noted in the ion.log log file. so like, check the log, babe. πŸ‘‘

🌈 FILES 🌈

the service data units transmitted by bpsource are sequences of text obtained from a file in the current working directory named "bpsourceAduFile", which bpsource creates automatically. yes, it makes its own file, it's self-sufficient like that. πŸ’…


🧚 ENVIRONMENT 🧚

no environment variables apply. nothing. zero. the environment said "not my problem". ✨


πŸ”₯ DIAGNOSTICS πŸ”₯

diagnostic messages produced by bpsource are written to the ION log file ion.log. keep an eye on that file, it's the group chat where all the drama goes down. πŸ“±

  • Can't attach to BP. β€” bpadmin has not yet initialized Bundle Protocol operations. go wake bpadmin up. 😴
  • bpsource fgets failed β€” operating system error. check errtext, correct the problem, and rerun.
  • No space for ZCO extent. β€” ION system error. check for earlier diagnostic messages describing the cause of the error; correct the problem and rerun.
  • Can't create ZCO extent. β€” ION system error. check for earlier diagnostic messages describing the cause of the error; correct the problem and rerun.
  • bpsource can't send ADU β€” Bundle Protocol service to the remote endpoint has been stopped. 😭

πŸ› BUGS πŸ›

report bugs to <ion-bugs@korgano.eecs.ohiou.edu>. be nice, they're doing their best. 🫢


πŸ‘‘ SEE ALSO πŸ‘‘

bpadmin(1), bpsink(1), bp(3)

iykyk. πŸ’œ


and that's the whole page, bestie β€” this one shipped as part of perl v5.24.1, dated 2016-07-07, and it's still serving looks in the BP executables section. slay. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from