1#ifndef BANNED_H
2#define BANNED_H
34
/*
5* This header lists functions that have been banned from our code base,
6* because they're too easy to misuse (and even if used correctly,
7* complicate audits). Including this header turns them into compile-time
8* errors.
9*/
1011
#define BANNED(func) sorry_##func##_is_a_banned_function
1213
#undef strcpy
14#define strcpy(x,y) BANNED(strcpy)
1516
#endif /* BANNED_H */