Lines Matching refs:ms

224 	struct magic_set *ms;  in magic_open()  local
226 ms = ecalloc((size_t)1, sizeof(struct magic_set)); in magic_open()
228 if (magic_setflags(ms, flags) == -1) { in magic_open()
233 ms->o.buf = ms->o.pbuf = NULL; in magic_open()
235 ms->c.li = emalloc((ms->c.len = 10) * sizeof(*ms->c.li)); in magic_open()
237 ms->event_flags = 0; in magic_open()
238 ms->error = -1; in magic_open()
239 ms->mlist = NULL; in magic_open()
240 ms->file = "unknown"; in magic_open()
241 ms->line = 0; in magic_open()
242 return ms; in magic_open()
244 efree(ms); in magic_open()
267 unreadable_info(struct magic_set *ms, mode_t md, const char *file) in unreadable_info() argument
271 if (file_printf(ms, "writable, ") == -1) in unreadable_info()
274 if (file_printf(ms, "executable, ") == -1) in unreadable_info()
277 if (file_printf(ms, "regular file, ") == -1) in unreadable_info()
279 if (file_printf(ms, "no read permission") == -1) in unreadable_info()
285 magic_close(struct magic_set *ms) in magic_close() argument
287 if (ms->mlist) { in magic_close()
288 free_mlist(ms->mlist); in magic_close()
290 if (ms->o.pbuf) { in magic_close()
291 efree(ms->o.pbuf); in magic_close()
293 if (ms->o.buf) { in magic_close()
294 efree(ms->o.buf); in magic_close()
296 if (ms->c.li) { in magic_close()
297 efree(ms->c.li); in magic_close()
299 efree(ms); in magic_close()
306 magic_load(struct magic_set *ms, const char *magicfile) in magic_load() argument
308 struct mlist *ml = file_apprentice(ms, magicfile, FILE_LOAD); in magic_load()
310 free_mlist(ms->mlist); in magic_load()
311 ms->mlist = ml; in magic_load()
318 magic_compile(struct magic_set *ms, const char *magicfile) in magic_compile() argument
320 struct mlist *ml = file_apprentice(ms, magicfile, FILE_COMPILE); in magic_compile()
327 magic_list(struct magic_set *ms, const char *magicfile) in magic_list() argument
329 struct mlist *ml = file_apprentice(ms, magicfile, FILE_LIST); in magic_list()
335 close_and_restore(const struct magic_set *ms, const char *name, int fd, in close_and_restore() argument
339 if ((ms->flags & MAGIC_PRESERVE_ATIME) != 0) { in close_and_restore()
369 magic_descriptor(struct magic_set *ms, int fd) in magic_descriptor() argument
371 return file_or_stream(ms, NULL, NULL); in magic_descriptor()
378 magic_file(struct magic_set *ms, const char *inname) in magic_file() argument
380 return file_or_stream(ms, inname, NULL); in magic_file()
384 magic_stream(struct magic_set *ms, php_stream *stream) in magic_stream() argument
386 return file_or_stream(ms, NULL, stream); in magic_stream()
390 file_or_stream(struct magic_set *ms, const char *inname, php_stream *stream) in file_or_stream() argument
410 if (file_reset(ms) == -1) in file_or_stream()
413 switch (file_fsmagic(ms, inname, &sb, stream)) { in file_or_stream()
435 if (unreadable_info(ms, sb.st_mode, inname) == -1) in file_or_stream()
449 file_error(ms, errno, "cannot read `%s'", inname); in file_or_stream()
454 if (file_buffer(ms, stream, inname, buf, (size_t)nbytes) == -1) in file_or_stream()
464 close_and_restore(ms, inname, 0, &sb); in file_or_stream()
465 return rv == 0 ? file_getbuffer(ms) : NULL; in file_or_stream()
470 magic_buffer(struct magic_set *ms, const void *buf, size_t nb) in magic_buffer() argument
472 if (file_reset(ms) == -1) in magic_buffer()
478 if (file_buffer(ms, NULL, NULL, buf, nb) == -1) { in magic_buffer()
481 return file_getbuffer(ms); in magic_buffer()
485 magic_error(struct magic_set *ms) in magic_error() argument
487 return (ms->event_flags & EVENT_HAD_ERR) ? ms->o.buf : NULL; in magic_error()
491 magic_errno(struct magic_set *ms) in magic_errno() argument
493 return (ms->event_flags & EVENT_HAD_ERR) ? ms->error : 0; in magic_errno()
497 magic_setflags(struct magic_set *ms, int flags) in magic_setflags() argument
503 ms->flags = flags; in magic_setflags()