lsm_acces...oup_create(3)

πŸ“¦
version 1.10.3 Β· 3 versions
, in fedora 43, fedora 44

πŸ’– lsm_access_group_create β€” from the Libstoragemgmt C API Manual πŸ’–

okay bestie, so this whole thing is lsm_access_group_create(3) and it lives in the Libstoragemgmt C API Manual and honestly? it's giving "let me introduce you to someone new" energy, because that's literally the whole job. 🫢


✨ NAME ✨

lsm_access_group_create β€” Create a new access group. that's it, that's the vibe. brand new access group, fresh out the box. πŸŽ€


🌸 SYNOPSIS 🌸

int lsm_access_group_create (lsm_connect *conn, const char *name, const
char *init_id, lsm_access_group_init_type init_type, lsm_system *system,
lsm_access_group **access_group, lsm_flag flags);

πŸ¦‹ ARGUMENTS πŸ¦‹

okay so here's the cast of characters, and yes every single one matters, no skipping:

  • conn β€” a valid lsm_connect pointer. like, it has to be valid, bestie, don't be out here passing garbage. πŸ’…
  • name β€” a string. it's the human recognizable name. lowkey important note: certain storage systems might alter or ignore it, so don't get too attached. 😭
  • init_id β€” a string. this is the initiator id that's getting added to the group. come on in, initiator. 🫢
  • init_type β€” an lsm_access_group_init_type. the valid initiator types are:
    • LSM_ACCESS_GROUP_INIT_TYPE_ISCSI_IQN β€” iSCSI IQN. yes queen, iSCSI. πŸ”₯
    • LSM_ACCESS_GROUP_INIT_TYPE_WWPN β€” FC WWPN. fibre channel representation. iconic. ✨
  • system β€” a pointer of lsm_system to create the access group for. you gotta say which system, we're not mind readers. πŸ™ˆ
  • access_group β€” output pointer of the newly created lsm_access_group. and listen, this returned value must be freed with the function lsm_access_group_record_free. don't leave it hanging, that's a leak and we don't do leaks. πŸ’€
  • flags β€” reserved for future use, must be LSM_CLIENT_FLAG_RSVD. it's reserved, so leave it alone. periodt. πŸ’œ

πŸŽ€ VERSION πŸŽ€

1.0 β€” baby's first version, and she ate. πŸ‘‘


🌈 DESCRIPTION 🌈

so basically: creates a new access group with one initiator in it. just one. that's the starting lineup. 🌟

and then, if you want more (and you know you do), you may expand the access group by adding more initiators via lsm_access_group_initiator_add. it's giving build-a-bear but for initiators. 🧚


⭐ CAPABILITY ⭐

LSM_CAP_ACCESS_GROUP_CREATE_WWPN
LSM_CAP_ACCESS_GROUP_CREATE_ISCSI_IQN

both of them. slay. πŸ’–


πŸ’… RETURN πŸ’…

returns an error code, as enumerated by lsm_error_number. here's the lineup:

  • LSM_ERR_OK
    • on success. we love to see it. πŸŽ‰
  • LSM_ERR_INVALID_ARGUMENT
    • when any argument is NULL, or the flags are invalid, or the system pointer is invalid, or the init_type is invalid, or the initiator ID string is illegal. so many ways to mess up and it will absolutely clock you. 😭
  • LSM_ERR_NO_SUPPORT
    • not supported. nope. not today. πŸ’€
  • LSM_ERR_NOT_FOUND_SYSTEM
    • when the specified system does not exist. she's not here, girl. πŸ”

real talk though bestie: check that return code. LSM_ERR_OK is the only one you want to see. anything else is a vibe check failure. 🫢

and that's the whole page, no cap. mwah. πŸ’‹

this masterpiece of a manual page is from the Libstoragemgmt C API Manual, dated February 2026, and it's filed under lsm_access_group_create(3) / lsm_acces...oup_create(3) β€” go forth and create access groups, you gorgeous Unix gremlin. πŸ¦‹βœ¨πŸŽ€

πŸ“¦ where this page comes from