Lines Matching refs:os

195 	ofmt_state_t	*os = NULL;  in ofmt_open()  local
236 os = calloc(sizeof (ofmt_state_t) + in ofmt_open()
238 if (os == NULL) in ofmt_open()
240 *ofmt = os; in ofmt_open()
241 os->os_fields = (ofmt_field_t *)&os[1]; in ofmt_open()
242 os->os_flags = flags; in ofmt_open()
243 os->os_fs = OFMT_DEFAULT_FS; in ofmt_open()
245 of = os->os_fields; in ofmt_open()
259 int nbad = os->os_nbad++; in ofmt_open()
262 if (os->os_badfields == NULL) { in ofmt_open()
263 os->os_badfields = malloc(sp->s_nfields * in ofmt_open()
265 if (os->os_badfields == NULL) in ofmt_open()
268 os->os_badfields[nbad] = strdup(sp->s_fields[i]); in ofmt_open()
269 if (os->os_badfields[nbad] == NULL) in ofmt_open()
279 os->os_maxnamelen = MAX(n, os->os_maxnamelen); in ofmt_open()
289 os->os_nfields = of_index; /* actual number of fields printed */ in ofmt_open()
294 if (os != NULL) in ofmt_open()
295 ofmt_close(os); in ofmt_open()
313 ofmt_state_t *os = ofmt; in ofmt_close() local
316 if (os == NULL) in ofmt_close()
318 for (i = 0; i < os->os_nfields; i++) in ofmt_close()
319 free(os->os_fields[i].of_name); in ofmt_close()
320 for (i = 0; i < os->os_nbad; i++) in ofmt_close()
321 free(os->os_badfields[i]); in ofmt_close()
322 free(os->os_badfields); in ofmt_close()
323 free(os); in ofmt_close()
331 ofmt_print_field(ofmt_state_t *os, ofmt_field_t *ofp, const char *value, in ofmt_print_field() argument
337 boolean_t parsable = (os->os_flags & OFMT_PARSABLE); in ofmt_print_field()
338 boolean_t multiline = (os->os_flags & OFMT_MULTILINE); in ofmt_print_field()
339 boolean_t rightjust = (os->os_flags & OFMT_RIGHTJUST); in ofmt_print_field()
347 if (os->os_nfields == 1) { in ofmt_print_field()
352 if (escsep && ((c == os->os_fs || c == '\\'))) in ofmt_print_field()
356 if (!os->os_lastfield) in ofmt_print_field()
357 (void) putchar(os->os_fs); in ofmt_print_field()
361 (void) printf("%*.*s: %s", os->os_maxnamelen, in ofmt_print_field()
362 os->os_maxnamelen, ofp->of_name, value); in ofmt_print_field()
363 if (!os->os_lastfield) in ofmt_print_field()
366 if (os->os_lastfield) { in ofmt_print_field()
371 os->os_overflow = 0; in ofmt_print_field()
376 if (valwidth + os->os_overflow >= width) { in ofmt_print_field()
377 os->os_overflow += valwidth - width + 1; in ofmt_print_field()
385 if (os->os_overflow > 0) { in ofmt_print_field()
386 compress = MIN(os->os_overflow, width - valwidth); in ofmt_print_field()
387 os->os_overflow -= compress; in ofmt_print_field()
438 ofmt_state_t *os = ofmt; in ofmt_print() local
445 boolean_t parsable = (os->os_flags & OFMT_PARSABLE); in ofmt_print()
446 boolean_t multiline = (os->os_flags & OFMT_MULTILINE); in ofmt_print()
447 boolean_t wrap = (os->os_flags & OFMT_WRAP); in ofmt_print()
450 sp = calloc(sizeof (split_t *), os->os_nfields); in ofmt_print()
455 if ((os->os_nrow++ % os->os_winsize.ws_row) == 0 && in ofmt_print()
457 if (!(os->os_flags & OFMT_NOHEADER)) in ofmt_print()
458 ofmt_print_header(os); in ofmt_print()
459 os->os_nrow++; in ofmt_print()
462 if (multiline && os->os_nrow > 1) in ofmt_print()
465 of = os->os_fields; in ofmt_print()
466 escsep = (os->os_nfields > 1); in ofmt_print()
468 for (i = 0; i < os->os_nfields; i++) { in ofmt_print()
469 os->os_lastfield = (i + 1 == os->os_nfields); in ofmt_print()
487 ofmt_print_field(os, &of[i], in ofmt_print()
491 ofmt_print_field(os, &of[i], OFMT_VAL_UNKNOWN, escsep); in ofmt_print()
498 for (i = 0; i < os->os_nfields; i++) { in ofmt_print()
499 os->os_lastfield = (i + 1 == os->os_nfields); in ofmt_print()
508 ofmt_print_field(os, &of[i], value, escsep); in ofmt_print()
515 for (i = 0; i < os->os_nfields; i++) in ofmt_print()
527 ofmt_state_t *os = ofmt; in ofmt_print_header() local
529 ofmt_field_t *of = os->os_fields; in ofmt_print_header()
530 boolean_t escsep = (os->os_nfields > 1); in ofmt_print_header()
532 for (i = 0; i < os->os_nfields; i++) { in ofmt_print_header()
533 os->os_lastfield = (i + 1 == os->os_nfields); in ofmt_print_header()
534 ofmt_print_field(os, &of[i], of[i].of_name, escsep); in ofmt_print_header()
545 ofmt_state_t *os = ofmt; in ofmt_update_winsize() local
546 struct winsize *winsize = &os->os_winsize; in ofmt_update_winsize()
562 ofmt_state_t *os = ofmt; in ofmt_strerror() local
583 parsable = (os->os_flags & OFMT_PARSABLE); in ofmt_strerror()
585 if (os->os_nbad > 1) in ofmt_strerror()
590 if (os->os_nbad > 1) in ofmt_strerror()
596 for (i = 0; i < os->os_nbad; i++) { in ofmt_strerror()
598 (void) strlcat(ebuf, os->os_badfields[i], in ofmt_strerror()