---
-Checks:
- - bugprone-*
- - cert-*
- - google-readability-casting
- - misc-*
- - readability-*
+Checks: |-
+ bugprone-*,
+ cert-*,
+ google-readability-casting,
+ misc-*,
+ readability-*,
- - -bugprone-assignment-in-if-condition # we explicitly put assignments into parentheses so they are very visible
- - -bugprone-branch-clone
- - -bugprone-easily-swappable-parameters
- - -bugprone-inc-dec-in-conditions
- - -bugprone-multi-level-implicit-pointer-conversion
- - -bugprone-narrowing-conversions
- - -bugprone-sizeof-expression # may be useful, but it's utterly broken
- - -bugprone-suspicious-string-compare
- - -cert-dcl03-c
- - -clang-analyzer-deadcode.DeadStores
- - -clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling
- - -clang-analyzer-unix.Malloc
- - -clang-analyzer-valist.Uninitialized
- - -clang-analyzer-optin.core.EnumCastOutOfRange # libknot uses enums as flags
- - -misc-include-cleaner
- - -misc-macro-parentheses
- - -misc-no-recursion
- - -misc-static-assert
- - -misc-unused-parameters
- - -readability-avoid-nested-conditional-operator
- - -readability-avoid-unconditional-preprocessor-if
- - -readability-braces-*
- - -readability-cognitive-complexity
- - -readability-else-after-return
- - -readability-function-cognitive-complexity
- - -readability-identifier-length
- - -readability-isolate-declaration
- - -readability-magic-numbers
- - -readability-non-const-parameter
- - -readability-redundant-declaration
-WarningsAsErrors: 'cert-*,clang-analyzer-*,misc-*,readability-*,-readability-non-const-parameter'
-HeaderFilterRegex: 'contrib/ucw/*.h'
+ -bugprone-assignment-in-if-condition,
+ -bugprone-branch-clone,
+ -bugprone-easily-swappable-parameters,
+ -bugprone-inc-dec-in-conditions,
+ -bugprone-multi-level-implicit-pointer-conversion,
+ -bugprone-narrowing-conversions,
+ -bugprone-not-null-terminated-result,
+ -bugprone-sizeof-expression,
+ -bugprone-suspicious-string-compare,
+ -cert-dcl03-c,
+ -clang-analyzer-deadcode.DeadStores,
+ -clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling,
+ -clang-analyzer-unix.Malloc,
+ -clang-analyzer-valist.Uninitialized,
+ -clang-analyzer-optin.core.EnumCastOutOfRange,
+ -misc-include-cleaner,
+ -misc-macro-parentheses,
+ -misc-no-recursion,
+ -misc-static-assert,
+ -misc-unused-parameters,
+ -readability-avoid-nested-conditional-operator,
+ -readability-avoid-unconditional-preprocessor-if,
+ -readability-braces-*,
+ -readability-cognitive-complexity,
+ -readability-else-after-return,
+ -readability-function-cognitive-complexity,
+ -readability-identifier-length,
+ -readability-isolate-declaration,
+ -readability-magic-numbers,
+ -readability-non-const-parameter,
+ -readability-redundant-declaration,
+
+WarningsAsErrors: |-
+ cert-*,
+ clang-analyzer-*,
+ misc-*,
+ readability-*,
+ -readability-non-const-parameter,
+
+HeaderFilterRegex: '(contrib/ucw/*.h|/usr/*.h)'
CheckOptions:
- key: readability-identifier-naming
value: 'lower_case'
// Later we might improve it to auto-resize in case of running out of space.
// Caveat: mdb_env_set_mapsize() can only be called without transactions open.
.maxsize = maxsize ? maxsize :
- (sizeof(size_t) > 4 ? 2048 : 500) * 1024*(size_t)1024,
+ (size_t)(sizeof(size_t) > 4 ? 2048 : 500) * 1024*1024,
};
int ret = the_rules->api->open(&the_rules->db, &the_rules->stats, &opts, NULL);
/* No persistence - we always refill from config for now.
uint16_t x = a[i] * 85; // interleave by zero bits
uint8_t sub_mask = 255 >> (8 - MIN(sub_len, 8));
uint16_t r = x | (sub_mask * 85 * 2);
- buf[2*i] = r / 256;
- buf[2*i + 1] = r % 256;
+ buf[(ssize_t)2*i] = r / 256;
+ buf[(ssize_t)2*i + 1] = r % 256;
}
return i * 2;
}
}
#define KEY_PREPEND(key, arr) do { \
- key.data -= sizeof(arr); \
- key.len += sizeof(arr); \
- memcpy(key.data, arr, sizeof(arr)); \
+ (key).data -= sizeof(arr); \
+ (key).len += sizeof(arr); \
+ memcpy((key).data, arr, sizeof(arr)); \
} while (false)
int kr_view_insert_action(const char *subnet, const char *dst_subnet,