SMP_REP_MANUFACTURER(8)

πŸ’– smp_rep_manufacturer(8) πŸ’–

ok so bestie, welcome to the SMP_UTILS corner of the man pages, this one's smp_rep_manufacturer and it is literally just here to ask a device "who made u" πŸŽ€


✨ NAME ✨

smp_rep_manufacturer β€” invoke REPORT MANUFACTURER INFORMATION SMP function

like. that's the whole job. it invokes the REPORT MANUFACTURER INFORMATION SMP function. queen behavior honestly πŸ‘‘


🌸 SYNOPSIS 🌸

smp_rep_manufacturer [--help] [--hex] [--interface=PARAMS] [--raw]
[--sa=SAS_ADDR] [--verbose] [--version] [--zero] SMP_DEVICE[,N]

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so what this does: it sends a SAS Serial Management Protocol (SMP) REPORT MANUFACTURER INFORMATION function request to an SMP target. that's the vibe. that's the mission. πŸ’…

the SMP target gets identified by two things: the SMP_DEVICE and the SAS_ADDR. and depending on which interface you're using, the SAS_ADDR may just be deduced from the SMP_DEVICE β€” no extra work, slay ✨

one lil thing to know: the mpt interface uses SMP_DEVICE to identify a HBA (that's an SMP initiator, bestie) and it needs that extra ,N tacked on to tell the difference between HBAs if there's more than one hanging around. multiple HBAs? not on your watch, add the ,N. 😌


πŸ’… OPTIONS πŸ’…

quick PSA before we dive in: mandatory arguments to long options are mandatory for short options as well. so like. don't skip them. periodt.

  • -h, --help β€” outputs the usage message then exits. short and sweet, our helpful king 🫢
  • -H, --hex β€” outputs the response (minus the CRC field) in hexadecimal. hex girl summer πŸ”₯
  • -I, --interface=PARAMS β€” interface specific parameters. and just so we're clear, "interface" here means the path through the operating system to the SMP initiator. check the smp_utils man page for more info, iykyk πŸ’œ
  • -r, --raw β€” sends the response (again, less the CRC field) to stdout in binary. and listen: all error messages go to stderr. all of them. not mixed up in your binary. okay? okay πŸ’€
  • -s, --sa=SAS_ADDR β€” specifies the SAS address of the SMP target device. typically this is an expander. this option may not even be needed if the SMP_DEVICE already has the target's SAS address inside it, so like, check first bestie πŸ™ˆ. the SAS_ADDR is in decimal, but most SAS addresses get shown in hexadecimal β€” messy, i know. to give a number in hexadecimal, either prefix it with '0x' or stick a trailing 'h' on it. two options, pick your fighter 🌈
  • -v, --verbose β€” increases the verbosity of the output. and the way that it can be used multiple times?? stacking it. main character energy πŸ“ˆ
  • -V, --version β€” prints the version string and then exits. bye πŸ‘‹
  • -z, --zero β€” zeroes the Allocated Response Length field in the request. this is required for strict SAS-1.1 compliance. HOWEVER. > bestie do NOT give this option in SAS-2 and later. if you do, an abridged response may result. we do not want an abridged response. put it down. 🚨

⭐ CONFORMING TO ⭐

the SMP REPORT MANUFACTURER function was introduced in SAS-1, with small additions in SAS-1.1. and then it just… stayed. this function remains unaltered in SAS-2 and SPL-1. consistent queen, no notes πŸ’–


πŸŽ€ AUTHORS πŸŽ€

Written by Douglas Gilbert. the legend himself 🌟


πŸ’Œ REPORTING BUGS πŸ’Œ

found a bug? Report bugs to <dgilbert at interlog dot com>. tell him, don't tell me 🫢


Copyright Β© 2006-2011 Douglas Gilbert

This software is distributed under a FreeBSD license. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. so like, no promises, bestie 😭


πŸ” SEE ALSO πŸ”

  • smp_utils
  • smp_discover(smp_utils)

and that's the whole page!! this was smp_utils-0.96, dated May 2011, and it lives at SMP_REP_MANUFACTURER(8) πŸ’–βœ¨ go ask a device about its manufacturer, you've got this 🧚🌸