Merge remote-tracking branch 'tor-github/pr/1612' into maint-0.4.2

This commit is contained in:
Nick Mathewson 2020-01-06 13:20:57 -05:00
commit 6da989cfe8
4 changed files with 14 additions and 4 deletions

4
changes/bug32771 Normal file
View File

@ -0,0 +1,4 @@
o Minor bugfixes (logging, crash):
- Avoid a possible crash when trying to log a (fatal) assertion failure
about mismatched magic numbers in configuration objects. Fixes bug 32771;
bugfix on 0.4.2.1-alpha.

4
changes/ticket32765 Normal file
View File

@ -0,0 +1,4 @@
o Minor bugfixes (correctness checks):
- Use GCC/Clang's printf-checking feature to make sure that
tor_assertf() arguments are correctly typed. Fixes bug 32765;
bugfix on 0.4.1.1-alpha.

View File

@ -53,8 +53,8 @@ struct_check_magic(const void *object, const struct_magic_decl_t *decl)
const uint32_t *ptr = STRUCT_VAR_P(object, decl->magic_offset);
tor_assertf(*ptr == decl->magic_val,
"Bad magic number on purported %s object. "
"Expected %"PRIu32"x but got "PRIu32"x.",
decl->magic_val, *ptr);
"Expected %"PRIu32"x but got %"PRIu32"x.",
decl->typename, decl->magic_val, *ptr);
}
/**

View File

@ -242,10 +242,12 @@
void tor_assertion_failed_(const char *fname, unsigned int line,
const char *func, const char *expr,
const char *fmt, ...);
const char *fmt, ...)
CHECK_PRINTF(5,6);
void tor_bug_occurred_(const char *fname, unsigned int line,
const char *func, const char *expr,
int once, const char *fmt, ...);
int once, const char *fmt, ...)
CHECK_PRINTF(6,7);
void tor_abort_(void) ATTR_NORETURN;