1From 41de28a92297f4cb0c5a8d7356cde9190176947b Mon Sep 17 00:00:00 2001
2From: Fabio Berton <fabio.berton@ossystems.com.br>
3Date: Thu, 14 Mar 2019 19:54:27 -0300
4Subject: [PATCH] Drop use of error.h
5Organization: O.S. Systems Software LTDA.
6
7The error.h does not work with musl and this project being embedded
8friendly it makes sense to avoid glibc-specific code.
9
10Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
11Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
12---
13 mkemlog.c | 29 ++++++++++++++---------------
14 1 file changed, 14 insertions(+), 15 deletions(-)
15
16diff --git a/mkemlog.c b/mkemlog.c
17index e3354ed..7bcdfce 100644
18--- a/mkemlog.c
19+++ b/mkemlog.c
20@@ -21,7 +21,6 @@
21 #include <unistd.h>
22 #include <fcntl.h>
23 #include <stdlib.h>
24-#include <error.h>
25 #include <errno.h>
26
27 #define EMLOG_DEVICE "/dev/emlog"
28@@ -40,16 +39,16 @@ int main(int argc, char** argv) {
29     FILE *max_size_file = NULL;
30     uid_t uid = -1;
31     if (argc < 2 || argc > 5) {
32-        error(1 ,0, USAGE);
33+        fprintf(stderr, USAGE);
34     }
35     file = argv[1];
36
37     max_size_file = fopen("/sys/module/emlog/parameters/emlog_max_size", "r");
38     if (max_size_file == NULL)
39-        error(1, errno, "Emlog module not loaded\n");
40+        fprintf(stderr, "Emlog module not loaded\n");
41     rc = fscanf(max_size_file, "%d", &emlog_max_size);
42     if (rc != 1)
43-        error(1, errno, "Unable to get emlog max size\n");
44+        fprintf(stderr, "Unable to get emlog max size\n");
45     fclose(max_size_file);
46     max_size_file = NULL;
47     if (argc > 2 ) {
48@@ -57,13 +56,13 @@ int main(int argc, char** argv) {
49         number = argv[2];
50         size_of_buffer = strtol(number, &end_of_number, 10);
51         if (errno) {
52-            error(1, errno, "Invalid size provided\n" USAGE);
53+            fprintf(stderr, "Invalid size provided\n" USAGE);
54         }
55         if (end_of_number == number) {
56-            error(1, 0, "Invalid size provided\n" USAGE);
57+            fprintf(stderr, "Invalid size provided\n" USAGE);
58         }
59         if (size_of_buffer < 1 || size_of_buffer > emlog_max_size) {
60-            error(1, 0, "Invalid size provided must be a value between 1 and %d\n" USAGE, emlog_max_size);
61+            fprintf(stderr, "Invalid size provided must be a value between 1 and %d\n" USAGE, emlog_max_size);
62         }
63     }
64     if (argc > 3 ) {
65@@ -71,10 +70,10 @@ int main(int argc, char** argv) {
66         number = argv[3];
67         mode = strtol(number, &end_of_number, 8);
68         if (errno) {
69-            error(1, errno, "Invalid mode provided\n" USAGE);
70+            fprintf(stderr, "Invalid mode provided\n" USAGE);
71         }
72         if (end_of_number == number || S_IFMT & mode) {
73-            error(1, 0, "Invalid mode provided\n" USAGE);
74+            fprintf(stderr, "Invalid mode provided\n" USAGE);
75         }
76     }
77     if (argc > 4 ) {
78@@ -82,27 +81,27 @@ int main(int argc, char** argv) {
79         number = argv[4];
80         uid = strtol(number, &end_of_number, 10);
81         if (errno) {
82-            error(1, errno, "Invalid uid provided\n" USAGE);
83+            fprintf(stderr, "Invalid uid provided\n" USAGE);
84         }
85         if (end_of_number == number) {
86-            error(1, 0, "Invalid uid provided\n" USAGE);
87+            fprintf(stderr, "Invalid uid provided\n" USAGE);
88         }
89     }
90     rc = stat(EMLOG_DEVICE, &emlog_stat);
91     if (rc == -1) {
92-        error(1, errno, "stat: " EMLOG_DEVICE);
93+        fprintf(stderr, "stat: " EMLOG_DEVICE);
94     }
95     if (!S_ISCHR(emlog_stat.st_mode)) {
96-        error(1, 0, EMLOG_DEVICE " is not a valid emlog device\n");
97+        fprintf(stderr, EMLOG_DEVICE " is not a valid emlog device\n");
98     }
99     rc = mknod(file, mode | S_IFCHR, makedev(major(emlog_stat.st_rdev),size_of_buffer));
100     if (rc == -1) {
101-        error(1, errno, "mknod: %s", file);
102+        fprintf(stderr, "mknod: %s", file);
103     }
104     if (uid != -1) {
105         rc = chown(file, uid, -1);
106         if (rc == -1) {
107-            error(1, errno, "chown: %s", file);
108+            fprintf(stderr, "chown: %s", file);
109         }
110     }
111     printf("Log device %s created with buffer size of %d KiB\n", file, size_of_buffer);
112--
1132.20.1
114