mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 21:23:58 +01:00
Add a module comment to util_bug.h
Closes ticket 22824.
This commit is contained in:
parent
1e079ec30d
commit
1502bf03fd
@ -5,6 +5,32 @@
|
||||
|
||||
/**
|
||||
* \file util_bug.h
|
||||
*
|
||||
* \brief Macros to manage assertions, fatal and non-fatal.
|
||||
*
|
||||
* Guidelines: All the different kinds of assertion in this file are for
|
||||
* bug-checking only. Don't write code that can assert based on bad inputs.
|
||||
*
|
||||
* We provide two kinds of assertion here: "fatal" and "nonfatal". Use
|
||||
* nonfatal assertions for any bug you can reasonably recover from -- and
|
||||
* please, try to recover! Many severe bugs in Tor have been caused by using
|
||||
* a regular assertion when a nonfatal assertion would have been better.
|
||||
*
|
||||
* If you need to check a condition with a nonfatal assertion, AND recover
|
||||
* from that same condition, consider using the BUG() macro inside a
|
||||
* conditional. For example:
|
||||
*
|
||||
* <code>
|
||||
* // wrong -- use tor_assert_nonfatal() if you just want an assertion.
|
||||
* BUG(ptr == NULL);
|
||||
*
|
||||
* // okay, but needlessly verbose
|
||||
* tor_assert_nonfatal(ptr != NULL);
|
||||
* if (ptr == NULL) { ... }
|
||||
*
|
||||
* // this is how we do it:
|
||||
* if (BUG(ptr == NULL)) { ... }
|
||||
* </code>
|
||||
**/
|
||||
|
||||
#ifndef TOR_UTIL_BUG_H
|
||||
|
Loading…
Reference in New Issue
Block a user