1/* 2 * Copyright (c) 2001 Chris D. Faulhaber 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 19 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 20 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 21 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 22 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 23 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 24 * POSSIBILITY OF SUCH DAMAGE. 25 * |
26 * $FreeBSD: head/bin/setfacl/file.c 76881 2001-05-20 05:13:21Z kris $ |
27 */ 28 29#include <sys/types.h> 30#include <sys/acl.h> 31 32#include <err.h> 33#include <stdio.h> 34#include <string.h> --- 19 unchanged lines hidden (view full) --- 54 file = stdin; 55 have_stdin = 1; 56 } else { 57 file = fopen(filename, "r"); 58 if (!file) 59 err(EX_OSERR, "fopen() %s failed", filename); 60 } 61 |
62 fread(buf, sizeof(buf), (size_t)1, file); |
63 if (ferror(file)) { 64 fclose(file); 65 err(EX_USAGE, "error reading from %s", filename); 66 } else if (!feof(file)) { 67 fclose(file); 68 errx(EX_USAGE, "line too long in %s", filename); 69 } 70 71 fclose(file); 72 73 return acl_from_text(buf); 74} |