diff options
author | iphydf <iphydf@users.noreply.github.com> | 2016-09-05 14:43:58 +0100 |
---|---|---|
committer | iphydf <iphydf@users.noreply.github.com> | 2016-09-06 11:09:10 +0100 |
commit | 5b57ab6332edc407524a353d3965a4870c33fe00 (patch) | |
tree | 238659ca8e218307fff1476d427c94194bc24fad /other/bootstrap_daemon/src/tox-bootstrapd.c | |
parent | aad1e0ad3f96786e0fb10d8dd144e5e6ebe93258 (diff) |
Improve C standard compliance.
- Don't cast between object and function pointers.
- Use standard compliant `__VA_ARGS__` in macros.
- Add explicit `__extension__` on unnamed union in struct (it's a GNU
extension).
- Remove ; after function definitions.
- Replace `const T foo = 3;` for integral types `T` with `enum { foo = 3 };`.
Folding integral constants like that as compile time constants is a GNU
extension. Arrays allocated with `foo` as dimension are VLAs on strictly
compliant C99 compilers.
- Replace empty initialiser list `{}` with zero-initialiser-list `{0}`.
The former is a GNU extension meaning the latter.
- Cast `T*` (where `T != void`) to `void *` in format arguments. While any
object pointer can be implicitly converted to and from `void *`, this
conversion does not happen in variadic function calls.
- Replace arithmetic on `void *` with arithmetic on `char *`. The former
is non-compliant.
- Replace non-`int`-derived types (like `uint16_t`, which is
`short`-derived) in bit fields with `int`-derived types. Using any type
other than `int` or `unsigned int` (or any of their aliases) in bit
fields is a GNU extension.
Diffstat (limited to 'other/bootstrap_daemon/src/tox-bootstrapd.c')
-rw-r--r-- | other/bootstrap_daemon/src/tox-bootstrapd.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/other/bootstrap_daemon/src/tox-bootstrapd.c b/other/bootstrap_daemon/src/tox-bootstrapd.c index 2ae60f76..06ea45aa 100644 --- a/other/bootstrap_daemon/src/tox-bootstrapd.c +++ b/other/bootstrap_daemon/src/tox-bootstrapd.c | |||
@@ -50,12 +50,12 @@ | |||
50 | 50 | ||
51 | // Uses the already existing key or creates one if it didn't exist | 51 | // Uses the already existing key or creates one if it didn't exist |
52 | // | 52 | // |
53 | // retirns 1 on success | 53 | // returns 1 on success |
54 | // 0 on failure - no keys were read or stored | 54 | // 0 on failure - no keys were read or stored |
55 | 55 | ||
56 | int manage_keys(DHT *dht, char *keys_file_path) | 56 | int manage_keys(DHT *dht, char *keys_file_path) |
57 | { | 57 | { |
58 | const uint32_t KEYS_SIZE = crypto_box_PUBLICKEYBYTES + crypto_box_SECRETKEYBYTES; | 58 | enum { KEYS_SIZE = crypto_box_PUBLICKEYBYTES + crypto_box_SECRETKEYBYTES }; |
59 | uint8_t keys[KEYS_SIZE]; | 59 | uint8_t keys[KEYS_SIZE]; |
60 | FILE *keys_file; | 60 | FILE *keys_file; |
61 | 61 | ||