Lines Matching refs:ms

58 file_printf(struct magic_set *ms, const char *fmt, ...)  in file_printf()  argument
67 if (ms->o.buf != NULL) { in file_printf()
68 spprintf(&newstr, 0, "%s%s", ms->o.buf, (buf ? buf : "")); in file_printf()
72 efree(ms->o.buf); in file_printf()
73 ms->o.buf = newstr; in file_printf()
75 ms->o.buf = buf; in file_printf()
85 file_error_core(struct magic_set *ms, int error, const char *f, va_list va, in file_error_core() argument
91 if (ms->event_flags & EVENT_HAD_ERR) in file_error_core()
94 efree(ms->o.buf); in file_error_core()
95 ms->o.buf = NULL; in file_error_core()
96 file_printf(ms, "line %" SIZE_T_FORMAT "u:", lineno); in file_error_core()
103 file_printf(ms, "%s (%s)", (*buf ? buf : ""), strerror(error)); in file_error_core()
105 file_printf(ms, "%s", buf); in file_error_core()
112 ms->event_flags |= EVENT_HAD_ERR; in file_error_core()
113 ms->error = error; in file_error_core()
118 file_error(struct magic_set *ms, int error, const char *f, ...) in file_error() argument
122 file_error_core(ms, error, f, va, 0); in file_error()
131 file_magerror(struct magic_set *ms, const char *f, ...) in file_magerror() argument
135 file_error_core(ms, 0, f, va, ms->line); in file_magerror()
140 file_oomem(struct magic_set *ms, size_t len) in file_oomem() argument
142 file_error(ms, errno, "cannot allocate %" SIZE_T_FORMAT "u bytes", in file_oomem()
147 file_badseek(struct magic_set *ms) in file_badseek() argument
149 file_error(ms, errno, "error seeking"); in file_badseek()
153 file_badread(struct magic_set *ms) in file_badread() argument
155 file_error(ms, errno, "error reading"); in file_badread()
159 file_separator(struct magic_set *ms) in file_separator() argument
161 return file_printf(ms, "\n- "); in file_separator()
165 checkdone(struct magic_set *ms, int *rv) in checkdone() argument
167 if ((ms->flags & MAGIC_CONTINUE) == 0) in checkdone()
169 if (file_separator(ms) == -1) in checkdone()
175 file_default(struct magic_set *ms, size_t nb) in file_default() argument
177 if (ms->flags & MAGIC_MIME) { in file_default()
178 if ((ms->flags & MAGIC_MIME_TYPE) && in file_default()
179 file_printf(ms, "application/%s", in file_default()
184 if (ms->flags & MAGIC_APPLE) { in file_default()
185 if (file_printf(ms, "UNKNUNKN") == -1) in file_default()
189 if (ms->flags & MAGIC_EXTENSION) { in file_default()
190 if (file_printf(ms, "???") == -1) in file_default()
205 file_buffer(struct magic_set *ms, php_stream *stream, zend_stat_t *st, in file_buffer() argument
231 ms->mode = b.st.st_mode; in file_buffer()
241 if ((ms->flags & MAGIC_NO_CHECK_ENCODING) == 0) { in file_buffer()
242 looks_text = file_encoding(ms, &b, NULL, 0, in file_buffer()
247 if ((ms->flags & MAGIC_NO_CHECK_APPTYPE) == 0 && inname) { in file_buffer()
248 m = file_os2_apptype(ms, inname, &b); in file_buffer()
249 if ((ms->flags & MAGIC_DEBUG) != 0) in file_buffer()
263 if ((ms->flags & MAGIC_NO_CHECK_COMPRESS) == 0) { in file_buffer()
264 m = file_zmagic(ms, &b, inname); in file_buffer()
265 if ((ms->flags & MAGIC_DEBUG) != 0) in file_buffer()
273 if ((ms->flags & MAGIC_NO_CHECK_TAR) == 0) { in file_buffer()
274 m = file_is_tar(ms, &b); in file_buffer()
275 if ((ms->flags & MAGIC_DEBUG) != 0) in file_buffer()
278 if (checkdone(ms, &rv)) in file_buffer()
284 if ((ms->flags & MAGIC_NO_CHECK_JSON) == 0) { in file_buffer()
285 m = file_is_json(ms, &b); in file_buffer()
286 if ((ms->flags & MAGIC_DEBUG) != 0) in file_buffer()
289 if (checkdone(ms, &rv)) in file_buffer()
295 if ((ms->flags & MAGIC_NO_CHECK_CDF) == 0) { in file_buffer()
296 m = file_trycdf(ms, &b); in file_buffer()
297 if ((ms->flags & MAGIC_DEBUG) != 0) in file_buffer()
300 if (checkdone(ms, &rv)) in file_buffer()
305 if ((ms->flags & MAGIC_NO_CHECK_ELF) == 0 && nb > 5 && fd != -1) { in file_buffer()
317 if ((pb = file_push_buffer(ms)) == NULL) in file_buffer()
320 rv = file_tryelf(ms, &b); in file_buffer()
321 rbuf = file_pop_buffer(ms, pb); in file_buffer()
326 if ((ms->flags & MAGIC_DEBUG) != 0) in file_buffer()
332 if ((ms->flags & MAGIC_NO_CHECK_SOFT) == 0) { in file_buffer()
333 m = file_softmagic(ms, &b, NULL, NULL, BINTEST, looks_text); in file_buffer()
334 if ((ms->flags & MAGIC_DEBUG) != 0) in file_buffer()
337 if (file_printf(ms, "%s", rbuf) == -1) in file_buffer()
341 if (checkdone(ms, &rv)) in file_buffer()
347 if ((ms->flags & MAGIC_NO_CHECK_TEXT) == 0) { in file_buffer()
349 m = file_ascmagic(ms, &b, looks_text); in file_buffer()
350 if ((ms->flags & MAGIC_DEBUG) != 0) in file_buffer()
361 rv = file_default(ms, nb); in file_buffer()
363 if (file_printf(ms, "%s", def) == -1) in file_buffer()
367 if ((ms->flags & MAGIC_MIME_ENCODING) != 0) { in file_buffer()
368 if (ms->flags & MAGIC_MIME_TYPE) in file_buffer()
369 if (file_printf(ms, "; charset=") == -1) in file_buffer()
371 if (file_printf(ms, "%s", code_mime) == -1) in file_buffer()
386 file_reset(struct magic_set *ms, int checkloaded) in file_reset() argument
388 if (checkloaded && ms->mlist[0] == NULL) { in file_reset()
389 file_error(ms, 0, "no magic files loaded"); in file_reset()
392 if (ms->o.buf) { in file_reset()
393 efree(ms->o.buf); in file_reset()
394 ms->o.buf = NULL; in file_reset()
396 if (ms->o.pbuf) { in file_reset()
397 efree(ms->o.pbuf); in file_reset()
398 ms->o.pbuf = NULL; in file_reset()
400 ms->event_flags &= ~EVENT_HAD_ERR; in file_reset()
401 ms->error = -1; in file_reset()
414 file_getbuffer(struct magic_set *ms) in file_getbuffer() argument
419 if (ms->event_flags & EVENT_HAD_ERR) in file_getbuffer()
422 if (ms->flags & MAGIC_RAW) in file_getbuffer()
423 return ms->o.buf; in file_getbuffer()
425 if (ms->o.buf == NULL) in file_getbuffer()
429 len = strlen(ms->o.buf); in file_getbuffer()
431 file_oomem(ms, len); in file_getbuffer()
435 if ((pbuf = CAST(char *, erealloc(ms->o.pbuf, psize))) == NULL) { in file_getbuffer()
436 file_oomem(ms, psize); in file_getbuffer()
439 ms->o.pbuf = pbuf; in file_getbuffer()
450 np = ms->o.pbuf; in file_getbuffer()
451 op = ms->o.buf; in file_getbuffer()
476 return ms->o.pbuf; in file_getbuffer()
480 for (np = ms->o.pbuf, op = ms->o.buf; *op;) { in file_getbuffer()
488 return ms->o.pbuf; in file_getbuffer()
492 file_check_mem(struct magic_set *ms, unsigned int level) in file_check_mem() argument
496 if (level >= ms->c.len) { in file_check_mem()
497 len = (ms->c.len = 20 + level) * sizeof(*ms->c.li); in file_check_mem()
498 ms->c.li = CAST(struct level_info *, (ms->c.li == NULL) ? in file_check_mem()
500 erealloc(ms->c.li, len)); in file_check_mem()
501 if (ms->c.li == NULL) { in file_check_mem()
502 file_oomem(ms, len); in file_check_mem()
506 ms->c.li[level].got_match = 0; in file_check_mem()
508 ms->c.li[level].last_match = 0; in file_check_mem()
509 ms->c.li[level].last_cond = COND_NONE; in file_check_mem()
515 file_printedlen(const struct magic_set *ms) in file_printedlen() argument
517 return ms->o.buf == NULL ? 0 : strlen(ms->o.buf); in file_printedlen()
521 file_replace(struct magic_set *ms, const char *pat, const char *rep) in file_replace() argument
540 res = php_pcre_replace_impl(pce, NULL, ms->o.buf, strlen(ms->o.buf), repl, -1, &rep_cnt); in file_replace()
548 strncpy(ms->o.buf, ZSTR_VAL(res), ZSTR_LEN(res)); in file_replace()
549 ms->o.buf[ZSTR_LEN(res)] = '\0'; in file_replace()
558 file_push_buffer(struct magic_set *ms) in file_push_buffer() argument
562 if (ms->event_flags & EVENT_HAD_ERR) in file_push_buffer()
568 pb->buf = ms->o.buf; in file_push_buffer()
569 pb->offset = ms->offset; in file_push_buffer()
571 ms->o.buf = NULL; in file_push_buffer()
572 ms->offset = 0; in file_push_buffer()
578 file_pop_buffer(struct magic_set *ms, file_pushbuf_t *pb) in file_pop_buffer() argument
582 if (ms->event_flags & EVENT_HAD_ERR) { in file_pop_buffer()
588 rbuf = ms->o.buf; in file_pop_buffer()
590 ms->o.buf = pb->buf; in file_pop_buffer()
591 ms->offset = pb->offset; in file_pop_buffer()