aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuis R. Rodriguez <mcgrof@qca.qualcomm.com>2011-11-15 13:50:23 -0800
committerLuis R. Rodriguez <mcgrof@qca.qualcomm.com>2011-11-15 13:50:23 -0800
commitd6bf498f05a2ac64a48137da00c0ada021a38fe0 (patch)
treef7c1fd9348c66fbb20c4beb9525ee309b3dc777d
parent8cbde0452c707ad0fab4ce65fcbd96cc10a8482d (diff)
downloadcrda-d6bf498f05a2ac64a48137da00c0ada021a38fe0.tar.gz
crda: use stdint.h instead of linux/types.h
Given that we may need to make a library out of some routines here to share with the regulatory simulator. Signed-off-by: Luis R. Rodriguez <mcgrof@qca.qualcomm.com>
-rw-r--r--intersect.c6
-rw-r--r--print-regdom.c8
-rw-r--r--regdb.h36
-rw-r--r--regdbdump.c2
-rw-r--r--reglib.c10
-rw-r--r--reglib.h26
-rwxr-xr-xutils/key2pub.py6
7 files changed, 47 insertions, 47 deletions
diff --git a/intersect.c b/intersect.c
index 2f4d416..2e5dacf 100644
--- a/intersect.c
+++ b/intersect.c
@@ -23,7 +23,7 @@
static int is_valid_reg_rule(const struct ieee80211_reg_rule *rule)
{
const struct ieee80211_freq_range *freq_range = &rule->freq_range;
- __u32 freq_diff;
+ uint32_t freq_diff;
if (freq_range->start_freq_khz == 0 || freq_range->end_freq_khz == 0)
return 0;
@@ -48,7 +48,7 @@ static int reg_rules_intersect(
{
struct ieee80211_freq_range *freq_range1, *freq_range2, *freq_range;
struct ieee80211_power_rule *power_rule1, *power_rule2, *power_rule;
- __u32 freq_diff;
+ uint32_t freq_diff;
freq_range1 = &rule1->freq_range;
freq_range2 = &rule2->freq_range;
@@ -184,7 +184,7 @@ int main(int argc, char **argv)
{
int fd;
struct stat stat;
- __u8 *db;
+ uint8_t *db;
struct regdb_file_header *header;
struct regdb_file_reg_country *countries;
int dblen, siglen, num_countries, i, r = 0;
diff --git a/print-regdom.c b/print-regdom.c
index 34b5ed4..f34a8db 100644
--- a/print-regdom.c
+++ b/print-regdom.c
@@ -4,8 +4,8 @@
#include <arpa/inet.h>
#include "reglib.h"
-static void reg_rule2rd(__u8 *db, int dblen,
- __be32 ruleptr, struct ieee80211_reg_rule *rd_reg_rule)
+static void reg_rule2rd(uint8_t *db, int dblen,
+ uint32_t ruleptr, struct ieee80211_reg_rule *rd_reg_rule)
{
struct regdb_file_reg_rule *rule;
struct regdb_file_freq_range *freq;
@@ -29,7 +29,7 @@ static void reg_rule2rd(__u8 *db, int dblen,
}
/* Converts a file regdomain to ieee80211_regdomain, easier to manage */
-struct ieee80211_regdomain *country2rd(__u8 *db, int dblen,
+struct ieee80211_regdomain *country2rd(uint8_t *db, int dblen,
struct regdb_file_reg_country *country)
{
struct regdb_file_reg_rules_collection *rcoll;
@@ -41,7 +41,7 @@ struct ieee80211_regdomain *country2rd(__u8 *db, int dblen,
num_rules = ntohl(rcoll->reg_rule_num);
/* re-get pointer with sanity checking for num_rules */
rcoll = crda_get_file_ptr(db, dblen,
- sizeof(*rcoll) + num_rules * sizeof(__be32),
+ sizeof(*rcoll) + num_rules * sizeof(uint32_t),
country->reg_collection_ptr);
size_of_rd = sizeof(struct ieee80211_regdomain) +
diff --git a/regdb.h b/regdb.h
index f040aa1..afb7284 100644
--- a/regdb.h
+++ b/regdb.h
@@ -1,7 +1,7 @@
#ifndef REG_DB_H
#define REG_DB_H
-#include <linux/types.h>
+#include <stdint.h>
/*
* WARNING: This file needs to be kept in sync with
@@ -28,9 +28,9 @@
struct regdb_file_header {
/* must be REGDB_MAGIC */
- __be32 magic;
+ uint32_t magic;
/* must be REGDB_VERSION */
- __be32 version;
+ uint32_t version;
/*
* Pointer (offset) into file where country list starts
* and number of countries. The country list is sorted
@@ -38,14 +38,14 @@ struct regdb_file_header {
* become really huge). Each country is described by a
* struct regdb_file_reg_country.
*/
- __be32 reg_country_ptr;
- __be32 reg_country_num;
+ uint32_t reg_country_ptr;
+ uint32_t reg_country_num;
/* length (in bytes) of the signature at the end of the file */
- __be32 signature_length;
+ uint32_t signature_length;
};
struct regdb_file_freq_range {
- __be32 start_freq, /* in kHz */
+ uint32_t start_freq, /* in kHz */
end_freq, /* in kHz */
max_bandwidth; /* in kHz */
};
@@ -56,9 +56,9 @@ struct regdb_file_freq_range {
*/
struct regdb_file_power_rule {
/* antenna gain is in mBi (100 * dBi) */
- __be32 max_antenna_gain;
+ uint32_t max_antenna_gain;
/* this is in mBm (100 * dBm) */
- __be32 max_eirp;
+ uint32_t max_eirp;
};
/* must match <linux/nl80211.h> enum nl80211_reg_rule_flags */
@@ -80,27 +80,27 @@ enum reg_rule_flags {
struct regdb_file_reg_rule {
/* pointers (offsets) into the file */
- __be32 freq_range_ptr; /* pointer to a struct regdb_file_freq_range */
- __be32 power_rule_ptr; /* pointer to a struct regdb_file_power_rule */
+ uint32_t freq_range_ptr; /* pointer to a struct regdb_file_freq_range */
+ uint32_t power_rule_ptr; /* pointer to a struct regdb_file_power_rule */
/* rule flags using enum reg_rule_flags */
- __be32 flags;
+ uint32_t flags;
};
struct regdb_file_reg_rules_collection {
- __be32 reg_rule_num;
+ uint32_t reg_rule_num;
/* pointers (offsets) into the file. There are reg_rule_num elements
* in the reg_rule_ptrs array pointing to struct
* regdb_file_reg_rule */
- __be32 reg_rule_ptrs[];
+ uint32_t reg_rule_ptrs[];
};
struct regdb_file_reg_country {
- __u8 alpha2[2];
- __u8 PAD;
- __u8 creqs; /* first two bits define DFS region */
+ uint8_t alpha2[2];
+ uint8_t PAD;
+ uint8_t creqs; /* first two bits define DFS region */
/* pointer (offset) into the file to a struct
* regdb_file_reg_rules_collection */
- __be32 reg_collection_ptr;
+ uint32_t reg_collection_ptr;
};
diff --git a/regdbdump.c b/regdbdump.c
index 51f99bc..9ba806c 100644
--- a/regdbdump.c
+++ b/regdbdump.c
@@ -13,7 +13,7 @@ int main(int argc, char **argv)
{
int fd;
struct stat stat;
- __u8 *db;
+ uint8_t *db;
struct regdb_file_header *header;
struct regdb_file_reg_country *countries;
int dblen, siglen, num_countries, i, r = 0;
diff --git a/reglib.c b/reglib.c
index 218110b..ebf0fb1 100644
--- a/reglib.c
+++ b/reglib.c
@@ -26,9 +26,9 @@
#include "keys-gcrypt.c"
#endif
-void *crda_get_file_ptr(__u8 *db, int dblen, int structlen, __be32 ptr)
+void *crda_get_file_ptr(uint8_t *db, int dblen, int structlen, uint32_t ptr)
{
- __u32 p = ntohl(ptr);
+ uint32_t p = ntohl(ptr);
if (p > dblen - structlen) {
fprintf(stderr, "Invalid database file, bad pointer!\n");
@@ -44,11 +44,11 @@ void *crda_get_file_ptr(__u8 *db, int dblen, int structlen, __be32 ptr)
* at least one key in the array such that the signature is valid
* against that key; 0 otherwise.
*/
-int crda_verify_db_signature(__u8 *db, int dblen, int siglen)
+int crda_verify_db_signature(uint8_t *db, int dblen, int siglen)
{
#ifdef USE_OPENSSL
RSA *rsa;
- __u8 hash[SHA_DIGEST_LENGTH];
+ uint8_t hash[SHA_DIGEST_LENGTH];
unsigned int i;
int ok = 0;
DIR *pubkey_dir;
@@ -99,7 +99,7 @@ int crda_verify_db_signature(__u8 *db, int dblen, int siglen)
#ifdef USE_GCRYPT
gcry_mpi_t mpi_e, mpi_n;
gcry_sexp_t rsa, signature, data;
- __u8 hash[20];
+ uint8_t hash[20];
unsigned int i;
int ok = 0;
diff --git a/reglib.h b/reglib.h
index 9fe5d8b..e6adc14 100644
--- a/reglib.h
+++ b/reglib.h
@@ -2,7 +2,7 @@
#define REG_LIB_H
#include <stdlib.h>
-#include <linux/types.h>
+#include <stdint.h>
#include "regdb.h"
@@ -10,24 +10,24 @@
/* This matches the kernel's data structures */
struct ieee80211_freq_range {
- __u32 start_freq_khz;
- __u32 end_freq_khz;
- __u32 max_bandwidth_khz;
+ uint32_t start_freq_khz;
+ uint32_t end_freq_khz;
+ uint32_t max_bandwidth_khz;
};
struct ieee80211_power_rule {
- __u32 max_antenna_gain;
- __u32 max_eirp;
+ uint32_t max_antenna_gain;
+ uint32_t max_eirp;
};
struct ieee80211_reg_rule {
struct ieee80211_freq_range freq_range;
struct ieee80211_power_rule power_rule;
- __u32 flags;
+ uint32_t flags;
};
struct ieee80211_regdomain {
- __u32 n_reg_rules;
+ uint32_t n_reg_rules;
char alpha2[2];
struct ieee80211_reg_rule reg_rules[];
};
@@ -61,21 +61,21 @@ static inline int is_valid_regdom(const char *alpha2)
return 1;
}
-static inline __u32 max(__u32 a, __u32 b)
+static inline uint32_t max(uint32_t a, uint32_t b)
{
return (a > b) ? a : b;
}
-static inline __u32 min(__u32 a, __u32 b)
+static inline uint32_t min(uint32_t a, uint32_t b)
{
return (a > b) ? b : a;
}
-void *crda_get_file_ptr(__u8 *db, int dblen, int structlen, __be32 ptr);
-int crda_verify_db_signature(__u8 *db, int dblen, int siglen);
+void *crda_get_file_ptr(uint8_t *db, int dblen, int structlen, uint32_t ptr);
+int crda_verify_db_signature(uint8_t *db, int dblen, int siglen);
/* File reg db entry -> rd converstion utilities */
-struct ieee80211_regdomain *country2rd(__u8 *db, int dblen,
+struct ieee80211_regdomain *country2rd(uint8_t *db, int dblen,
struct regdb_file_reg_country *country);
/* reg helpers */
diff --git a/utils/key2pub.py b/utils/key2pub.py
index c7f1a7f..4d85369 100755
--- a/utils/key2pub.py
+++ b/utils/key2pub.py
@@ -87,7 +87,7 @@ static struct pubkey keys[] = {
def print_gcrypt(output, name, val):
while val[0] == '\0':
val = val[1:]
- output.write('static const __u8 %s[%d] = {\n' % (name, len(val)))
+ output.write('static const uint8_t %s[%d] = {\n' % (name, len(val)))
idx = 0
for v in val:
if not idx:
@@ -104,8 +104,8 @@ def print_gcrypt(output, name, val):
def print_gcrypt_keys(output, n):
output.write(r'''
struct key_params {
- const __u8 *e, *n;
- __u32 len_e, len_n;
+ const uint8_t *e, *n;
+ uint32_t len_e, len_n;
};
#define KEYS(_e, _n) { \