Changes in uspace/srv/devman/match.c [aed3e6a:ce04ea44] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/devman/match.c
raed3e6a rce04ea44 32 32 33 33 #include <errno.h> 34 #include <fcntl.h>35 34 #include <io/log.h> 36 35 #include <str.h> 37 36 #include <str_error.h> 38 37 #include <sys/types.h> 39 #include < sys/stat.h>38 #include <vfs/vfs.h> 40 39 41 40 #include "devman.h" … … 201 200 int fd; 202 201 size_t len = 0; 203 204 fd = open(conf_path, O_RDONLY); 202 struct stat st; 203 204 fd = vfs_lookup_open(conf_path, WALK_REGULAR, MODE_READ); 205 205 if (fd < 0) { 206 206 log_msg(LOG_DEFAULT, LVL_ERROR, "Unable to open `%s' for reading: %s.", … … 210 210 opened = true; 211 211 212 len = lseek(fd, 0, SEEK_END); 213 lseek(fd, 0, SEEK_SET); 212 if (vfs_stat(fd, &st) != EOK) { 213 log_msg(LOG_DEFAULT, LVL_ERROR, "Unable to fstat %d: %s.", fd, 214 str_error(errno)); 215 goto cleanup; 216 } 217 len = st.size; 214 218 if (len == 0) { 215 219 log_msg(LOG_DEFAULT, LVL_ERROR, "Configuration file '%s' is empty.", … … 225 229 } 226 230 227 ssize_t read_bytes = read(fd, buf, len);231 ssize_t read_bytes = vfs_read(fd, (aoff64_t []) {0}, buf, len); 228 232 if (read_bytes <= 0) { 229 233 log_msg(LOG_DEFAULT, LVL_ERROR, "Unable to read file '%s' (%d).", conf_path, … … 239 243 240 244 if (opened) 241 close(fd);245 vfs_put(fd); 242 246 243 247 return suc;
Note:
See TracChangeset
for help on using the changeset viewer.