Lines Matching defs:dstr
310 aclent_type_txt(dynaclstr_t *dstr, aclent_t *aclp, int flags)
319 error = str_append(dstr, "user::");
321 error = str_append(dstr, "defaultuser::");
327 error = str_append(dstr, "user:");
329 error = str_append(dstr, "defaultuser:");
332 error = str_append(dstr, pruname(aclp->a_id, idp,
335 error = str_append(dstr, ":");
341 error = str_append(dstr, "group::");
343 error = str_append(dstr, "defaultgroup::");
349 error = str_append(dstr, "group:");
351 error = str_append(dstr, "defaultgroup:");
354 error = str_append(dstr, prgname(aclp->a_id, idp,
357 error = str_append(dstr, ":");
363 error = str_append(dstr, "mask:");
365 error = str_append(dstr, "defaultmask:");
371 error = str_append(dstr, "other:");
373 error = str_append(dstr, "defaultother:");
460 ace_perm_txt(dynaclstr_t *dstr, uint32_t mask,
526 error = str_append(dstr, buf);
536 error = str_append(dstr,
540 str_append(dstr, READ_DIR_TXT);
546 str_append(dstr, WRITE_DATA_TXT);
549 str_append(dstr, ADD_FILE_TXT);
554 error = str_append(dstr,
557 error = str_append(dstr,
563 error = str_append(dstr, READ_DATA_TXT);
566 error = str_append(dstr, WRITE_DATA_TXT);
569 error = str_append(dstr, APPEND_DATA_TXT);
573 error = str_append(dstr, READ_XATTR_TXT);
576 error = str_append(dstr, WRITE_XATTR_TXT);
579 error = str_append(dstr, EXECUTE_TXT);
582 error = str_append(dstr, DELETE_CHILD_TXT);
585 error = str_append(dstr, READ_ATTRIBUTES_TXT);
588 error = str_append(dstr, WRITE_ATTRIBUTES_TXT);
591 error = str_append(dstr, DELETE_TXT);
594 error = str_append(dstr, READ_ACL_TXT);
597 error = str_append(dstr, WRITE_ACL_TXT);
600 error = str_append(dstr, WRITE_OWNER_TXT);
603 error = str_append(dstr, SYNCHRONIZE_TXT);
605 if (error == 0 && dstr->d_aclexport[dstr->d_pos-1] == '/') {
606 dstr->d_aclexport[--dstr->d_pos] = '\0';
609 error = str_append(dstr, ":");
618 ace_access_txt(dynaclstr_t *dstr, int type)
623 error = str_append(dstr, ALLOW_TXT);
625 error = str_append(dstr, DENY_TXT);
627 error = str_append(dstr, AUDIT_TXT);
629 error = str_append(dstr, ALARM_TXT);
631 error = str_append(dstr, UNKNOWN_TXT);
637 ace_inherit_txt(dynaclstr_t *dstr, uint32_t iflags, int flags)
674 error = str_append(dstr, buf);
677 error = str_append(dstr, FILE_INHERIT_TXT);
680 error = str_append(dstr, DIR_INHERIT_TXT);
683 error = str_append(dstr, NO_PROPAGATE_TXT);
686 error = str_append(dstr, INHERIT_ONLY_TXT);
689 error = str_append(dstr, SUCCESSFUL_ACCESS_TXT);
692 error = str_append(dstr, FAILED_ACCESS_TXT);
695 error = str_append(dstr, INHERITED_ACE_TXT);
697 if (error == 0 && dstr->d_aclexport[dstr->d_pos-1] == '/') {
698 dstr->d_aclexport[--dstr->d_pos] = '\0';
699 error = str_append(dstr, ":");
740 dynaclstr_t *dstr;
747 if ((dstr = malloc(sizeof (dynaclstr_t))) == NULL)
749 dstr->d_bufsize = aclcnt * ACL_ENTRY_SIZE;
750 if ((dstr->d_aclexport = malloc(dstr->d_bufsize)) == NULL) {
751 free(dstr);
754 *dstr->d_aclexport = '\0';
755 dstr->d_pos = 0;
758 if (error = aclent_type_txt(dstr, aclp, flags))
760 if (error = aclent_perm_txt(dstr, aclp->a_perm))
768 if (error = str_append(dstr, ":"))
772 if (error = str_append(dstr, idstr))
776 if (error = str_append(dstr, ","))
780 if (dstr->d_aclexport)
781 free(dstr->d_aclexport);
783 aclexport = dstr->d_aclexport;
785 free(dstr);
822 str_append(dynaclstr_t *dstr, char *newstr)
826 if ((len + dstr->d_pos) >= dstr->d_bufsize) {
827 dstr->d_aclexport = realloc(dstr->d_aclexport,
828 dstr->d_bufsize + len + 1);
829 if (dstr->d_aclexport == NULL)
831 dstr->d_bufsize += len;
833 (void) strcat(&dstr->d_aclexport[dstr->d_pos], newstr);
834 dstr->d_pos += len;
839 aclent_perm_txt(dynaclstr_t *dstr, o_mode_t perm)
856 return (str_append(dstr, buf));
895 dynaclstr_t *dstr;
902 if ((dstr = malloc(sizeof (dynaclstr_t))) == NULL)
904 dstr->d_bufsize = aclcnt * ACL_ENTRY_SIZE;
905 if ((dstr->d_aclexport = malloc(dstr->d_bufsize)) == NULL) {
906 free(dstr);
909 *dstr->d_aclexport = '\0';
910 dstr->d_pos = 0;
914 if (error = ace_type_txt(dstr, aclp, flags))
916 if (error = ace_perm_txt(dstr, aclp->a_access_mask,
919 if (error = ace_inherit_txt(dstr, aclp->a_flags, flags))
921 if (error = ace_access_txt(dstr, aclp->a_type))
930 if (error = str_append(dstr, ":"))
951 if (error = str_append(dstr, idstr))
959 if (error = str_append(dstr, ","))
967 if (dstr->d_aclexport)
968 free(dstr->d_aclexport);
970 aclexport = dstr->d_aclexport;
972 free(dstr);
1043 dynaclstr_t *dstr;
1046 if ((dstr = malloc(sizeof (dynaclstr_t))) == NULL)
1048 dstr->d_bufsize = ACE_ENTRY_SIZE;
1049 if ((dstr->d_aclexport = malloc(dstr->d_bufsize)) == NULL) {
1050 free(dstr);
1053 *dstr->d_aclexport = '\0';
1055 dstr->d_pos = 0;
1058 dstr->d_aclexport[0] = '\0';
1059 dstr->d_pos = 0;
1061 if (ace_type_txt(dstr, acep, 0))
1063 len = strlen(&dstr->d_aclexport[0]);
1064 if (ace_perm_txt(dstr, acep->a_access_mask, acep->a_flags,
1067 if (ace_inherit_txt(dstr, acep->a_flags, ACL_COMPACT_FMT))
1069 if (ace_access_txt(dstr, acep->a_type) == -1)
1071 (void) printf(" %20.*s%s\n", len, dstr->d_aclexport,
1072 &dstr->d_aclexport[len]);
1075 if (dstr->d_aclexport)
1076 free(dstr->d_aclexport);
1077 free(dstr);