projects
/
rrq
/
fuse_xattrs.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
c215171
)
utils.c: optimization
author
Felipe Barriga Richards
<spam@felipebarriga.cl>
Thu, 16 Feb 2017 16:50:59 +0000
(13:50 -0300)
committer
Felipe Barriga Richards
<spam@felipebarriga.cl>
Thu, 16 Feb 2017 17:11:08 +0000
(14:11 -0300)
utils.c
patch
|
blob
|
history
diff --git
a/utils.c
b/utils.c
index 10593e6f90d67ed6a414937ea9dc509f22c28ccc..f245e7e3e84849b0a62d57a9c5dd09ff872749bb 100644
(file)
--- a/
utils.c
+++ b/
utils.c
@@
-62,20
+62,32
@@
const int filename_is_sidecar(const char *string) {
return 0;
}
return 0;
}
+#define USER_NAMESPACE "user."
+#define SYSTEM_NAMESPACE "system."
+#define SECURITY_NAMESPACE "security."
+#define TRUSTED_NAMESPACE "trusted."
+
+const size_t USER_NAMESPACE_SIZE = strlen(USER_NAMESPACE);
+const size_t SYSTEM_NAMESPACE_SIZE = strlen(SYSTEM_NAMESPACE);
+const size_t SECURITY_NAMESPACE_SIZE = strlen(SECURITY_NAMESPACE);
+const size_t THRUSTED_NAMESPACE_SIZE = strlen(TRUSTED_NAMESPACE);
+
enum namespace get_namespace(const char *name) {
enum namespace get_namespace(const char *name) {
- if (strncmp(name, "user.", strlen("user.")) == 0) {
+ size_t name_size = strlen(name);
+
+ if (name_size > USER_NAMESPACE_SIZE && memcmp(name, USER_NAMESPACE, USER_NAMESPACE_SIZE) == 0) {
return USER;
}
return USER;
}
- if (
strncmp(name, "system.", strlen("system.")
) == 0) {
+ if (
name_size > SYSTEM_NAMESPACE_SIZE && memcmp(name, SYSTEM_NAMESPACE, SYSTEM_NAMESPACE_SIZE
) == 0) {
return SYSTEM;
}
return SYSTEM;
}
- if (
strncmp(name, "security.", strlen("security.")
) == 0) {
+ if (
name_size > SECURITY_NAMESPACE_SIZE && memcmp(name, SECURITY_NAMESPACE, SECURITY_NAMESPACE_SIZE
) == 0) {
return SECURITY;
}
return SECURITY;
}
- if (
strncmp(name, "trusted.", strlen("trusted.")
) == 0) {
+ if (
name_size > THRUSTED_NAMESPACE_SIZE && memcmp(name, TRUSTED_NAMESPACE, THRUSTED_NAMESPACE_SIZE
) == 0) {
return TRUSTED;
}
return TRUSTED;
}