提问人:shivani 提问时间:7/20/2023 最后编辑:shivani 更新时间:7/20/2023 访问量:24
找不到 libsolv librray 的 solvable_lookup_bin_checksum() 返回的无符号字符字符串的大小
Unable to find size of unsigned char string returned by solvable_lookup_bin_checksum() of libsolv librray
问:
我正在尝试使用 libsolv 库的 solvable_lookup_bin_checksum() 收集包的二进制校验和。但是我不确定如何找到返回的无符号字符串长度,因为它包含二进制数据并且它不是 NULL 终止的(不能使用传统的 string.c 函数)。
附上我的代码片段,我试图将返回字符串复制到其他无符号字符字符串中,但由于长度问题而无法获得正确的结果。
unsigned char *pszTemp = solvable_lookup_bin_checksum(pSolv, SOLVABLE_CHECKSUM, &checksumtype);
size_t pszTemp_size = strlen((const char*)pszTemp) + 1;
unsigned char *pszChecksum= (unsigned char *)calloc(pszTemp_size, sizeof(unsigned char));
memcpy(pszChecksum, pszTemp, pszTemp_size);
让我知道您的建议,我们如何计算返回的无符号字符串长度。
答: 暂无答案
评论
unsinged
?请发布真实代码。unsigned char *pszTemp
pszTemp