X-Git-Url: http://www.average.org/gitweb/?p=pam_pcsc_cr.git;a=blobdiff_plain;f=test_serial.c;h=32e3ed3af15b23b0338ee9547a0c0daa4fe3b953;hp=c2a59e60171fe77cc3a9cdc3d8b7557e277dce13;hb=7b6aa201f4bd4aaf7f7a83677f7fd6f316dde07e;hpb=1fb61b04544488148032c06475042aec167d6097 diff --git a/test_serial.c b/test_serial.c index c2a59e6..32e3ed3 100644 --- a/test_serial.c +++ b/test_serial.c @@ -30,17 +30,13 @@ int main(int argc, char *argv[]) printf("serialized size=%d\n", serial_size(&srl)); serial_init(&srl, buffer, sizeof(buffer)); for (i = 0; i < 4; i++) { - char item[32]; - memset(item, 0, sizeof(item)); - int size = serial_get(&srl, item, sizeof(item)); - if (size > sizeof(item)) { - printf("serial_get(..., item, %d) = %d\n", - (int)sizeof(item), size); + char *item; + int size; + if (serial_get(&srl, (void**)&item, &size)) { + printf("serial_get failed for item %d\n", i); rc = 1; - } else if (size == 0) { - printf("serial_get(...) = 0\n"); } else { - printf("serial_get(...) = %d: \"%s\"\n", size, item); + printf("serial_get(...) = %d: \"%.*s\"\n", size, size, item); if (memcmp(in[i], item, size)) { printf("\"%s\" != \"%s\" (%d)\n", in[i], item, size);