/* Unix SMB/CIFS implementation. Safe string handling routines. Copyright (C) Andrew Tridgell 1994-1998 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ #ifndef _SAFE_STRING_H #define _SAFE_STRING_H #ifndef _SPLINT_ /* http://www.splint.org */ /* Some macros to ensure people don't use buffer overflow vulnerable string functions. */ #ifdef strcpy #undef strcpy #endif /* strcpy */ #define strcpy(dest,src) __ERROR__XX__NEVER_USE_STRCPY___; #ifdef strcat #undef strcat #endif /* strcat */ #define strcat(dest,src) __ERROR__XX__NEVER_USE_STRCAT___; #ifdef sprintf #undef sprintf #endif /* sprintf */ #define sprintf __ERROR__XX__NEVER_USE_SPRINTF__; #endif /* !_SPLINT_ */ #endif