From f7bc645e69627a930b2433cf8a1f657f28ca6b8a Mon Sep 17 00:00:00 2001 From: mpf Date: Tue, 10 Nov 2009 23:55:12 +0000 Subject: Use buffered fwrite(3) to build the udl Huffman table, rather than doing 131074 write(2)s. OK mglocker, deraadt. --- sys/dev/microcode/udl/build.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'sys/dev/microcode') diff --git a/sys/dev/microcode/udl/build.c b/sys/dev/microcode/udl/build.c index cf9e1f1e12c..8032b124ebc 100644 --- a/sys/dev/microcode/udl/build.c +++ b/sys/dev/microcode/udl/build.c @@ -1,4 +1,4 @@ -/* $OpenBSD: build.c,v 1.5 2009/08/26 12:32:27 mglocker Exp $ */ +/* $OpenBSD: build.c,v 1.6 2009/11/10 23:55:12 mpf Exp $ */ /* * Copyright (c) 2009 Marcus Glocker @@ -20,6 +20,7 @@ #include #include +#include #include #include "udl_huffman.h" @@ -29,24 +30,24 @@ int main(void) { - int fd, i; + int i; + FILE *file; uint32_t bit_count; uint32_t bit_pattern; - fd = open(FILENAME, O_WRONLY | O_CREAT | O_TRUNC, 0644); - if (fd == -1) - err(1, "%s", FILENAME); + if ((file = fopen(FILENAME, "w")) == NULL) + err(1, "fopen %s", FILENAME); for (i = 0; i < UDL_HUFFMAN_RECORDS; i++) { bit_count = udl_huffman[i].bit_count; bit_pattern = htobe32(udl_huffman[i].bit_pattern); - if (write(fd, &bit_count, sizeof(bit_count)) == -1) - err(1, "write"); - if (write(fd, &bit_pattern, sizeof(bit_pattern)) == -1) - err(1, "write"); + if (fwrite(&bit_count, sizeof(bit_count), 1, file) != 1) + err(1, "fwrite"); + if (fwrite(&bit_pattern, sizeof(bit_pattern), 1, file) != 1) + err(1, "fwrite"); } - close(fd); + fclose(file); return (0); } -- cgit v1.3-18-gd494