| |
| - 8ch indent, no tabs |
| |
| - structs in MixedCase, variables, functions in lower_case |
| |
| - the destructors always unregister the object from the next bigger |
| object, not the other way around |
| |
| - to minimize strict aliasing violations we prefer unions over casting |
| |
| - for robustness reasons destructors should be able to destruct |
| half-initialized objects, too |
| |
| - error codes are returned as negative Exxx. i.e. return -EINVAL. There |
| are some exceptions: for constructors its is OK to return NULL on |
| OOM. For lookup functions NULL is fine too for "not found". |
| |
| - Do not issue NSS requests (that includes user name and host name |
| lookups) from the main daemon as this might trigger deadlocks when |
| we those lookups involve synchronously talking to services that we |
| would need to start up. |
| |
| - Do not acccess any directories outside of /etc/, /dev, /lib from the |
| init daemon to avoid deadlocks with the automounter. |
| |
| - Don't synchronously talk to any other service, due to risk of |
| deadlocks. |