1/* 2 * Copyright (c) 2000-2011 Apple Inc. All Rights Reserved. 3 * 4 * @APPLE_LICENSE_HEADER_START@ 5 * 6 * This file contains Original Code and/or Modifications of Original Code 7 * as defined in and that are subject to the Apple Public Source License 8 * Version 2.0 (the 'License'). You may not use this file except in 9 * compliance with the License. Please obtain a copy of the License at 10 * http://www.opensource.apple.com/apsl/ and read it before using this 11 * file. 12 * 13 * The Original Code and all software distributed under the License are 14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 18 * Please see the License for the specific language governing rights and 19 * limitations under the License. 20 * 21 * @APPLE_LICENSE_HEADER_END@ 22 */ 23 24#ifndef _TPDEBUGGING_H_ 25#define _TPDEBUGGING_H_ 26 27#include <security_utilities/debugging.h> 28 29/* If TP_USE_SYSLOG is defined and not 0, use syslog() for debug 30 * logging in addition to invoking the secdebug macro (which, as of 31 * Snow Leopard, emits a static dtrace probe instead of an actual 32 * log message.) 33 */ 34#ifndef TP_USE_SYSLOG 35#define TP_USE_SYSLOG 0 36#endif 37 38#if TP_USE_SYSLOG 39#include <syslog.h> 40#define tp_secdebug(scope, format...) \ 41{ \ 42 syslog(LOG_NOTICE, format); \ 43 secdebug(scope, format); \ 44} 45#else 46#define tp_secdebug(scope, format...) \ 47 secdebug(scope, format) 48#endif 49 50#ifdef NDEBUG 51/* this actually compiles to nothing */ 52#define tpErrorLog(args...) tp_secdebug("tpError", ## args) 53#else 54#define tpErrorLog(args...) printf(args) 55#endif 56 57#define tpDebug(args...) tp_secdebug("tpDebug", ## args) 58#define tpDbDebug(args...) tp_secdebug("tpDbDebug", ## args) 59#define tpCrlDebug(args...) tp_secdebug("tpCrlDebug", ## args) 60#define tpPolicyError(args...) tp_secdebug("tpPolicy", ## args) 61#define tpVfyDebug(args...) tp_secdebug("tpVfyDebug", ## args) 62#define tpAnchorDebug(args...) tp_secdebug("tpAnchorDebug", ## args) 63#define tpOcspDebug(args...) tp_secdebug("tpOcsp", ## args) 64#define tpOcspCacheDebug(args...) tp_secdebug("tpOcspCache", ## args) 65#define tpTrustSettingsDbg(args...) tp_secdebug("tpTrustSettings", ## args) 66 67#endif /* _TPDEBUGGING_H_ */ 68