| 938 | } |
| 939 | |
| 940 | static void |
| 941 | biba_devfs_create_device(struct ucred *cred, struct mount *mp, |
| 942 | struct cdev *dev, struct devfs_dirent *de, struct label *delabel) |
| 943 | { |
| 944 | struct mac_biba *mb; |
| 945 | const char *dn; |
| 946 | int biba_type; |
| 947 | |
| 948 | mb = SLOT(delabel); |
| 949 | dn = devtoname(dev); |
| 950 | if (strcmp(dn, "null") == 0 || |
| 951 | strcmp(dn, "zero") == 0 || |
| 952 | strcmp(dn, "random") == 0 || |
| 953 | strncmp(dn, "fd/", strlen("fd/")) == 0) |
| 954 | biba_type = MAC_BIBA_TYPE_EQUAL; |
| 955 | else if (ptys_equal && |
| 956 | (strncmp(dn, "ttyp", strlen("ttyp")) == 0 || |
| 957 | strncmp(dn, "pts/", strlen("pts/")) == 0 || |
| 958 | strncmp(dn, "ptyp", strlen("ptyp")) == 0)) |
| 959 | biba_type = MAC_BIBA_TYPE_EQUAL; |
| 960 | else |
| 961 | biba_type = MAC_BIBA_TYPE_HIGH; |
| 962 | biba_set_effective(mb, biba_type, 0, NULL); |
| 963 | } |
| 964 | |
| 965 | static void |
| 966 | biba_devfs_create_directory(struct mount *mp, char *dirname, int dirnamelen, |
nothing calls this directly
no test coverage detected