Lines Matching refs:dr
112 static int devfs_rule_input(struct devfs_rule *dr, struct devfs_mount *dm);
113 static int devfs_rule_insert(struct devfs_rule *dr);
166 struct devfs_rule *dr; in devfs_rules_ioctl() local
188 dr = (struct devfs_rule *)data; in devfs_rules_ioctl()
189 error = devfs_rule_input(dr, dm); in devfs_rules_ioctl()
192 dk = devfs_rule_byid(dr->dr_id); in devfs_rules_ioctl()
197 if (rid2rsn(dr->dr_id) == 0) { in devfs_rules_ioctl()
201 error = devfs_rule_insert(dr); in devfs_rules_ioctl()
204 dr = (struct devfs_rule *)data; in devfs_rules_ioctl()
205 error = devfs_rule_input(dr, dm); in devfs_rules_ioctl()
223 if (dr->dr_iacts & DRA_INCSET && in devfs_rules_ioctl()
224 devfs_ruleset_bynum(dr->dr_incset) == NULL) { in devfs_rules_ioctl()
229 memcpy(&dk->dk_rule, dr, sizeof(*dr)); in devfs_rules_ioctl()
255 dr = (struct devfs_rule *)data; in devfs_rules_ioctl()
256 error = devfs_rule_input(dr, dm); in devfs_rules_ioctl()
267 ds = devfs_ruleset_bynum(rid2rsn(dr->dr_id)); in devfs_rules_ioctl()
272 rnum = rid2rn(dr->dr_id); in devfs_rules_ioctl()
281 memcpy(dr, &dk->dk_rule, sizeof(*dr)); in devfs_rules_ioctl()
459 devfs_rule_input(struct devfs_rule *dr, struct devfs_mount *dm) in devfs_rule_input() argument
462 if (dr->dr_magic != DEVFS_MAGIC) in devfs_rule_input()
464 dr->dr_id = devfs_rid_input(dr->dr_id, dm); in devfs_rule_input()
474 devfs_rule_insert(struct devfs_rule *dr) in devfs_rule_insert() argument
488 if (dr->dr_iacts & DRA_INCSET) { in devfs_rule_insert()
489 dsi = devfs_ruleset_bynum(dr->dr_incset); in devfs_rule_insert()
495 rsnum = rid2rsn(dr->dr_id); in devfs_rule_insert()
501 dkrn = rid2rn(dr->dr_id); in devfs_rule_insert()
515 memcpy(&dk->dk_rule, dr, sizeof(*dr)); in devfs_rule_insert()
537 struct devfs_rule *dr = &dk->dk_rule; in devfs_rule_match() local
555 if (dr->dr_icond & DRC_DSWFLAGS) { in devfs_rule_match()
561 if ((dsw->d_flags & dr->dr_dswflags) == 0) { in devfs_rule_match()
567 if (dr->dr_icond & DRC_PATHPTRN) in devfs_rule_match()
581 struct devfs_rule *dr = &dk->dk_rule; in devfs_rule_matchpath() local
599 match = fnmatch(dr->dr_pathptrn, pname, FNM_PATHNAME) == 0; in devfs_rule_matchpath()
611 struct devfs_rule *dr = &dk->dk_rule; in devfs_rule_run() local
616 if (dr->dr_iacts & DRA_BACTS) { in devfs_rule_run()
617 if (dr->dr_bacts & DRB_HIDE) in devfs_rule_run()
619 if (dr->dr_bacts & DRB_UNHIDE) in devfs_rule_run()
622 if (dr->dr_iacts & DRA_UID) in devfs_rule_run()
623 de->de_uid = dr->dr_uid; in devfs_rule_run()
624 if (dr->dr_iacts & DRA_GID) in devfs_rule_run()
625 de->de_gid = dr->dr_gid; in devfs_rule_run()
626 if (dr->dr_iacts & DRA_MODE) in devfs_rule_run()
627 de->de_mode = dr->dr_mode; in devfs_rule_run()
628 if (dr->dr_iacts & DRA_INCSET) { in devfs_rule_run()