#include <stdio.h>
#include <errno.h>
#include <strings.h>
#include <err.h>
#include <libsff.h>
#include "sff.h"
int
main(void)
{
uint_t i;
uint8_t buf[256];
bzero(buf, sizeof (buf));
buf[SFF_8472_IDENTIFIER] = SFF_8024_ID_QSFP;
for (i = 0; i < UINT8_MAX; i++) {
int ret;
nvlist_t *nvl;
char *val;
buf[SFF_8636_MAX_CASE_TEMP] = i;
if ((ret = libsff_parse(buf, sizeof (buf), 0xa0, &nvl)) != 0) {
errx(1, "TEST FAILED: failed to parse QSFP connector "
"%d: %s\n", i, strerror(ret));
}
if ((ret = nvlist_lookup_string(nvl, LIBSFF_KEY_MAX_CASE_TEMP,
&val)) != 0) {
errx(1, "TEST FAILED: failed to find connector when "
"parsing key %d: %s\n", i, strerror(ret));
}
(void) puts(val);
nvlist_free(nvl);
}
return (0);
}