FreeCalypso > hg > fc-am-toolkit
view bootmatch/comp_readbin.c @ 25:afd760eb1f8d
doc/C1xx-updates: new article
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 11 Jun 2023 20:57:23 +0000 |
parents | bfcc8180cf3c |
children |
line wrap: on
line source
/* * Bootmatch compiler: here we read the binary file. */ #include <sys/types.h> #include <sys/file.h> #include <sys/stat.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include "comp_defs.h" extern u_char boot_image[BOOT_BLOCK_SIZE]; void read_bin_file(filename) char *filename; { int fd; struct stat st; fd = open(filename, O_RDONLY); if (fd < 0) { perror(filename); exit(1); } fstat(fd, &st); if (!S_ISREG(st.st_mode)) { fprintf(stderr, "error: %s is not a regular file\n", filename); exit(1); } if (st.st_size != BOOT_BLOCK_SIZE) { fprintf(stderr, "error: %s has wrong length\n", filename); exit(1); } read(fd, boot_image, BOOT_BLOCK_SIZE); close(fd); }