[insert project logo here (125x200px max)]

Navigator

Mailinglists

Please report any errors or ommissions you find to our `Help' mailinglist, or post a message in the Forums.

Copyright and Licensing Information

Snap is (c) Jonathan T. Moore, 1999-2002 and licensed under the GNU General Public License (GPL).

All other parts of Splash are (c) Willem de Bruijn, 2002-2003 and licensed under the BSD Open Source License.

All sourcecode is made publicly available.

Acknowledgement

Splash and the Splash website are hosted by SourceForge.net

SourceForge.net Logo

osi-open source certified logo

Splash - Documentation

SNMP Plus a Lightweight API for SNAP Handling

Main Page   Alphabetical List   Data Structures   File List   Data Fields   Globals  

snap-1.1-wjdb/lib/wassert.h

Go to the documentation of this file.
00001 /* $Id: wassert.h,v 1.1.1.1 2002/12/04 18:59:42 wdebruij Exp $ */
00002 
00003 #ifndef _SNAP_WASSERT_H_
00004 #define _SNAP_WASSERT_H_
00005 
00006 #include <assert.h>
00007 
00008 /* Defines a special kind of assert that prints a warning but allows
00009    execution to continue.  Used to signal problems with the packet,
00010    but does not halt execution (i.e., packet is ill-formed, but this
00011    does not constitute an internal error). */
00012 #ifndef __KERNEL__
00013 #ifndef NDEBUG
00014 
00015 #define wassert(e)                          \
00016   if (e);                               \
00017   else {                                \
00018     fprintf(stderr,"%s:%d: soft-assertion failed in %s\n",      \
00019         __FILE__,__LINE__,__STRING(e));             \
00020   }
00021 
00022 
00023 #else
00024 
00025 #define wassert(e) ((void) 0)
00026 
00027 #endif
00028 
00029 #else
00030 #define wassert(e) ((void) 0)
00031 #endif /* !__KERNEL__ */
00032 #endif /* _SNAP_WASSERT_H_ */