From 08ee86e668a21096bc1aab2d7f2dfcefe9ebf697 Mon Sep 17 00:00:00 2001 From: "Luis R. Rodriguez" Date: Mon, 27 Oct 2008 17:41:54 -0700 Subject: [PATCH] Move last helpers to crda.h, forgot to add crda.h to git too Signed-off-by: Luis R. Rodriguez --- crda.c | 22 ---------------------- crda.h | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 22 deletions(-) create mode 100644 crda.h diff --git a/crda.c b/crda.c index 97e1f53..0930c69 100644 --- a/crda.c +++ b/crda.c @@ -94,28 +94,6 @@ static int error_handler(struct sockaddr_nl __attribute__((unused)) *nla, exit(err->error); } -/* Avoid stdlib */ -static int is_len_2(const char *alpha2) -{ - if (alpha2[0] == '\0' || (alpha2[1] == '\0')) - return 0; - if (alpha2[2] == '\0') - return 1; - return 0; -} - -static int is_valid_regdom(const char *alpha2) -{ - if (!is_len_2(alpha2)) - return 0; - - if (!is_alpha2(alpha2) && !is_world_regdom(alpha2)) - return 0; - - return 1; -} - - static int put_reg_rule(__u8 *db, int dblen, __be32 ruleptr, struct nl_msg *msg) { struct regdb_file_reg_rule *rule; diff --git a/crda.h b/crda.h new file mode 100644 index 0000000..eec4ec4 --- /dev/null +++ b/crda.h @@ -0,0 +1,49 @@ +#include +#include + +/* Common regulatory functions and helpers */ + +void *crda_get_file_ptr(__u8 *db, int dblen, int structlen, __be32 ptr); +int crda_verify_db_signature(__u8 *db, int dblen, int siglen); + +static inline int is_world_regdom(const char *alpha2) +{ + if (alpha2[0] == '0' && alpha2[1] == '0') + return 1; + return 0; +} + +static inline int isalpha_upper(char letter) +{ + if (letter >= 'A' && letter <= 'Z') + return 1; + return 0; +} + +static inline int is_alpha2(const char *alpha2) +{ + if (isalpha_upper(alpha2[0]) && isalpha_upper(alpha2[1])) + return 1; + return 0; +} + +/* Avoid stdlib */ +static inline int is_len_2(const char *alpha2) +{ + if (alpha2[0] == '\0' || (alpha2[1] == '\0')) + return 0; + if (alpha2[2] == '\0') + return 1; + return 0; +} + +static inline int is_valid_regdom(const char *alpha2) +{ + if (!is_len_2(alpha2)) + return 0; + + if (!is_alpha2(alpha2) && !is_world_regdom(alpha2)) + return 0; + + return 1; +} -- 2.7.4