+2016-08-16 Niels Möller <nisse@lysator.liu.se>
+
+ * examples/io.c (write_data): Renamed, and use const void * for
+ the input data. Updated all callers.
+ (write_string): ... old name.
+ (write_file): Use const void * for the input data.
+
2016-08-05 Niels Möller <nisse@lysator.liu.se>
* examples/hogweed-benchmark.c: Use uint8_t for curve25519 values.
return EXIT_FAILURE;
}
- if (!write_string (stdout, decoded_bytes, result))
+ if (!write_data (stdout, decoded_bytes, result))
{
werror ("Error writing file: %s\n", strerror(errno));
return EXIT_FAILURE;
werror ("Error reading file: %s\n", strerror(errno));
return EXIT_FAILURE;
}
- if (!write_string (stdout, encoded_bytes, result)
+ if (!write_data (stdout, encoded_bytes, result)
|| fflush (stdout) != 0)
{
werror ("Error writing file: %s\n", strerror(errno));
return EXIT_SUCCESS;
}
/* The result vector is printed */
- if (!write_string(stdout,encoded_bytes, result))
+ if (!write_data(stdout, encoded_bytes, result))
{
werror ("Error writing file: %s\n", strerror(errno));
return EXIT_FAILURE;
return EXIT_FAILURE;
}
- if (!write_string (stdout, decoded_bytes, result))
+ if (!write_data (stdout, decoded_bytes, result))
{
werror ("Error writing file: %s\n", strerror(errno));
return EXIT_FAILURE;
encoded_bytes += base64_encode_final(&b64_ctx,result + encoded_bytes);
result[encoded_bytes++] = '\n';
- if (!write_string (stdout, encoded_bytes, result)
+ if (!write_data (stdout, encoded_bytes, result)
|| fflush (stdout) != 0)
{
werror ("Error writing file: %s\n", strerror(errno));
/* The result vector is written */
result[encoded_bytes++] = '\n';
- if (!write_string (stdout, encoded_bytes, result))
+ if (!write_data (stdout, encoded_bytes, result))
{
werror ("Error writing file: %s\n", strerror(errno));
return EXIT_FAILURE;
}
int
-write_string(FILE *f, unsigned size, const char *buffer)
+write_data(FILE *f, size_t size, const void *buffer)
{
size_t res = fwrite(buffer, 1, size, f);
}
int
-write_file(const char *name, unsigned size, const char *buffer)
+write_file(const char *name, size_t size, const void *buffer)
{
FILE *f = fopen(name, "wb");
int res;
if (!f)
return 0;
- res = write_string(f, size, buffer);
+ res = write_data(f, size, buffer);
return fclose(f) == 0 && res;
}
read_file(const char *name, size_t size, uint8_t **buffer);
int
-write_file(const char *name, unsigned size, const char *buffer);
+write_file(const char *name, size_t size, const void *data);
int
-write_string(FILE *f, unsigned size, const char *buffer);
+write_data(FILE *f, size_t size, const void *data);
int
simple_random(struct yarrow256_ctx *ctx, const char *name);
{
CBC_DECRYPT(&ctx->aes, aes_decrypt, size, buffer, buffer);
hmac_sha1_update(&ctx->hmac, size, buffer);
- if (!write_string(out, size, buffer))
+ if (!write_data(out, size, buffer))
{
werror("Writing output failed: %s\n", strerror(errno));
return 0;
{
unsigned leftover = AES_BLOCK_SIZE - padding;
hmac_sha1_update(&ctx->hmac, leftover, buffer);
- if (!write_string(out, leftover, buffer))
+ if (!write_data(out, leftover, buffer))
{
werror("Writing output failed: %s\n", strerror(errno));
return 0;
uint8_t buffer[4];
WRITE_UINT32(buffer, n);
- return write_string(f, sizeof(buffer), buffer);
+ return write_data(f, sizeof(buffer), buffer);
}
static int
p = xalloc(size);
nettle_mpz_get_str_256(size, p, x);
- res = write_string(f, size, p);
+ res = write_data(f, size, p);
free(p);
return res;
}
hmac_sha1_digest(&ctx->hmac, SHA1_DIGEST_SIZE, buffer + size);
size += SHA1_DIGEST_SIZE;
- if (!write_string(out, size, buffer))
+ if (!write_data(out, size, buffer))
{
werror("Writing output failed: %s\n", strerror(errno));
return 0;
}
CBC_ENCRYPT(&ctx->aes, aes_encrypt, size, buffer, buffer);
- if (!write_string(out, size, buffer))
+ if (!write_data(out, size, buffer))
{
werror("Writing output failed: %s\n", strerror(errno));
return 0;