globus_net_manager.h(3)

πŸ“¦
version 1.7 Β· 5 versions
, in epel 10, fedora 43, fedora 44, ubuntu resolute, ubuntu stonking

πŸŽ€ NAME πŸŽ€

okay bestie, gather round πŸ’– this is globus_net_manager.h, and it lives in section 3 β€” the Library Functions Manual β€” which is where all the library-call lore hangs out. It's the Globus Net Manager Interface, aka the whole entire vibe of how Globus lets a net manager peek at and rewrite your network contacts at every ✨dramatic moment✨ of a connection's life. Periodt.


✨ SYNOPSIS ✨

First things first, you gotta pull in your headers, no cap:

#include 'globus_common.h'
#include 'globus_net_manager_attr.h'

πŸ¦‹ Data Structures πŸ¦‹

  • struct globus_net_manager_s β€” Net Manager Definition. the blueprint, the main character, the moment.

πŸ’… Macros πŸ’…

  • #define GLOBUS_NET_MANAGER_MODULE β€” Module descriptor. literally just the descriptor that says "hi, I'm a net manager module πŸ’«".

🌸 Typedefs 🌸

these are the callback function signatures β€” the little hooks where your net manager gets to do its thing. every single one of them returns a globus_result_t, because we love a consistent return type in this house 🫢

  • globus_net_manager_pre_listen β€” Net Manager Pre-Listen Function Signature. called before we start listening, iykyk.
typedef globus_result_t (* globus_net_manager_pre_listen) (struct
    globus_net_manager_s *manager, const globus_net_manager_attr_t
    *manager_attr_array, const char *task_id, const char *transport,
    const globus_net_manager_attr_t *attr_array,
    globus_net_manager_attr_t **attr_array_out)
  • globus_net_manager_post_listen β€” Net Manager Post-Listen Function Signature. and this one runs after the listening has commenced πŸ’«
typedef globus_result_t (* globus_net_manager_post_listen) (struct
    globus_net_manager_s *manager, const globus_net_manager_attr_t
    *manager_attr_array, const char *task_id, const char *transport,
    const char *local_contact, const globus_net_manager_attr_t
    *attr_array, char **local_contact_out, globus_net_manager_attr_t
    **attr_array_out)
  • globus_net_manager_end_listen β€” Net Manager End-Listen Function Signature. closing time, you don't gotta go home but you can't stay here πŸ₯²
typedef globus_result_t (* globus_net_manager_end_listen) (struct
    globus_net_manager_s *manager, const globus_net_manager_attr_t
    *manager_attr_array, const char *task_id, const char *transport,
    const char *local_contact, const globus_net_manager_attr_t
    *attr_array)
  • globus_net_manager_pre_accept β€” Net Manager Pre-Accept Function Signature. right before we accept, bestie.
typedef globus_result_t (* globus_net_manager_pre_accept) (struct
    globus_net_manager_s *manager, const globus_net_manager_attr_t
    *manager_attr_array, const char *task_id, const char *transport,
    const char *local_contact, const globus_net_manager_attr_t
    *attr_array, globus_net_manager_attr_t **attr_array_out)
  • globus_net_manager_post_accept β€” Net Manager Post-Accept Function Signature. accepted, slayed, done πŸ’…
typedef globus_result_t (* globus_net_manager_post_accept) (struct
    globus_net_manager_s *manager, const globus_net_manager_attr_t
    *manager_attr_array, const char *task_id, const char *transport,
    const char *local_contact, const char *remote_contact, const
    globus_net_manager_attr_t *attr_array, globus_net_manager_attr_t
    **attr_array_out)
  • globus_net_manager_pre_connect β€” Net Manager Pre-Connect Function Signature. the pregame before the connect πŸ”₯
typedef globus_result_t (* globus_net_manager_pre_connect) (struct
    globus_net_manager_s *manager, const globus_net_manager_attr_t
    *manager_attr_array, const char *task_id, const char *transport,
    const char *remote_contact, const globus_net_manager_attr_t
    *attr_array, char **remote_contact_out, globus_net_manager_attr_t
    **attr_array_out)
  • globus_net_manager_post_connect β€” Net Manager Post-Connect Function Signature. connected. iconic. no notes. ⭐
typedef globus_result_t (* globus_net_manager_post_connect) (struct
    globus_net_manager_s *manager, const globus_net_manager_attr_t
    *manager_attr_array, const char *task_id, const char *transport,
    const char *local_contact, const char *remote_contact, const
    globus_net_manager_attr_t *attr_array, globus_net_manager_attr_t
    **attr_array_out)
  • globus_net_manager_pre_close β€” Net Manager Pre-Close Function Signature. saying goodbye but make it formal πŸ₯Ί
typedef globus_result_t (* globus_net_manager_pre_close) (struct
    globus_net_manager_s *manager, const globus_net_manager_attr_t
    *manager_attr_array, const char *task_id, const char *transport,
    const char *local_contact, const char *remote_contact, const
    globus_net_manager_attr_t *attr_array)
  • globus_net_manager_post_close β€” Net Manager Post-Close Function Signature. and now we're officially closed, bye babe πŸ¦‹
typedef globus_result_t (* globus_net_manager_post_close) (struct
    globus_net_manager_s *manager, const globus_net_manager_attr_t
    *manager_attr_array, const char *task_id, const char *transport,
    const char *local_contact, const char *remote_contact, const
    globus_net_manager_attr_t *attr_array)
  • globus_net_manager_t β€” Net Manager Definition. yep, it's the same definition, just wearing a typedef as a little outfit:
typedef struct globus_net_manager_s globus_net_manager_t

πŸ‘‘ Functions πŸ‘‘

only two, but they're the whole point, fr fr:

  • globus_result_t globus_net_manager_register (globus_net_manager_t *manager, globus_module_descriptor_t *module) β€” Register a network manager. put yourself on the map, queen.
  • globus_result_t globus_net_manager_unregister (globus_net_manager_t *manager) β€” Unregister a network manager. and this is the Irish goodbye πŸ‘‹

πŸ’– Detailed Description πŸ’–

Globus Net Manager Interface. That's the whole thing, bestie β€” this header is the interface where a network manager plugs into Globus and gets its little callback moments at every stage of listening, accepting, connecting and closing. lowkey elegant, highkey essential 🌈


🧚 Author 🧚

Generated automatically by Doxygen for globus_net_manager from the source code. not a human, just a robot doing its lil thing πŸ€–βœ¨


okay that's the whole page, no cap. and for the cute sign-off: this whole vibe check came to you from globus_net_manager, Version 1.7, filed under globus_net_manager.h(3). stan. πŸ’œ