(file) Return to PegasusAssertZOS.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

File: [Pegasus] / pegasus / src / Pegasus / Common / PegasusAssertZOS.h (download)
Revision: 1.6, Tue Dec 16 18:56:00 2008 UTC (15 years, 6 months ago) by kumpf
Branch: MAIN
CVS Tags: preBug9676, postBug9676, TASK_PEP317_1JUNE_2013, TASK-TASK_PEP362_RestfulService_branch-root, TASK-TASK_PEP362_RestfulService_branch-merged_out_from_trunk, TASK-TASK_PEP362_RestfulService_branch-merged_in_to_trunk, TASK-TASK_PEP362_RestfulService_branch-merged_in_from_branch, TASK-TASK_PEP362_RestfulService_branch-branch, TASK-PEP362_RestfulService-root, TASK-PEP362_RestfulService-merged_out_to_branch, TASK-PEP362_RestfulService-merged_out_from_trunk, TASK-PEP362_RestfulService-merged_in_to_trunk, TASK-PEP362_RestfulService-merged_in_from_branch, TASK-PEP362_RestfulService-branch, TASK-PEP348_SCMO-root, TASK-PEP348_SCMO-merged_out_to_branch, TASK-PEP348_SCMO-merged_out_from_trunk, TASK-PEP348_SCMO-merged_in_to_trunk, TASK-PEP348_SCMO-merged_in_from_branch, TASK-PEP348_SCMO-branch, TASK-PEP317_pullop-root, TASK-PEP317_pullop-merged_out_to_branch, TASK-PEP317_pullop-merged_out_from_trunk, TASK-PEP317_pullop-merged_in_to_trunk, TASK-PEP317_pullop-merged_in_from_branch, TASK-PEP317_pullop-branch, RELEASE_2_9_2-RC2, RELEASE_2_9_2-RC1, RELEASE_2_9_2, RELEASE_2_9_1-RC1, RELEASE_2_9_1, RELEASE_2_9_0-RC1, RELEASE_2_9_0, RELEASE_2_9-root, RELEASE_2_9-branch, RELEASE_2_14_1, RELEASE_2_14_0-RC2, RELEASE_2_14_0-RC1, RELEASE_2_14_0, RELEASE_2_14-root, RELEASE_2_14-branch, RELEASE_2_13_0-RC2, RELEASE_2_13_0-RC1, RELEASE_2_13_0-FC, RELEASE_2_13_0, RELEASE_2_13-root, RELEASE_2_13-branch, RELEASE_2_12_1-RC1, RELEASE_2_12_1, RELEASE_2_12_0-RC1, RELEASE_2_12_0-FC, RELEASE_2_12_0, RELEASE_2_12-root, RELEASE_2_12-branch, RELEASE_2_11_2-RC1, RELEASE_2_11_2, RELEASE_2_11_1-RC1, RELEASE_2_11_1, RELEASE_2_11_0-RC1, RELEASE_2_11_0-FC, RELEASE_2_11_0, RELEASE_2_11-root, RELEASE_2_11-branch, RELEASE_2_10_1-RC1, RELEASE_2_10_1, RELEASE_2_10_0-RC2, RELEASE_2_10_0-RC1, RELEASE_2_10_0, RELEASE_2_10-root, RELEASE_2_10-branch, PREAUG25UPDATE, POSTAUG25UPDATE, HPUX_TEST, HEAD, CIMRS_WORK_20130824, BeforeUpdateToHeadOct82011
Changes since 1.5: +8 -8 lines
BUG#: 8273
TITLE: Remove trailing space characters
DESCRIPTION: Remove meaningless whitespace.

//%LICENSE////////////////////////////////////////////////////////////////
//
// Licensed to The Open Group (TOG) under one or more contributor license
// agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
// this work for additional information regarding copyright ownership.
// Each contributor licenses this file to you under the OpenPegasus Open
// Source License; you may not use this file except in compliance with the
// License.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the "Software"),
// to deal in the Software without restriction, including without limitation
// the rights to use, copy, modify, merge, publish, distribute, sublicense,
// and/or sell copies of the Software, and to permit persons to whom the
// Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
//////////////////////////////////////////////////////////////////////////
//
//%/////////////////////////////////////////////////////////////////////////////
#ifndef Pegasus_Assert_ZOS_h
#define Pegasus_Assert_ZOS_h

#include <ctest.h>
#include <signal.h>
#include <unistd.h>
#include <stdio.h>

/*
   This function is executing a number of assertaion task.
   In differnet to the standard assert() function,
   this function does not abort the server!

   1) Print a statement to stderr
   2) Create a stack trace
   3) Create a system dump

*/

void __pegasus_assert_zOS(const char* file, int line, const char* cond);

/*
   Define PEGASUS_ASSERT assertion statement.  This statement tests the
   condition defined by the parameters and if not True executes an number
   of tasks.
*/

# define PEGASUS_ASSERT(COND)                                               \
      do                                                                    \
      {                                                                     \
          if (!(COND))                                                      \
          {                                                                 \
             __pegasus_assert_zOS( __FILE__, __LINE__, #COND );             \
          }                                                                 \
      } while (0)

/*
   Define PEGASUS_DEBUG_ASSERT assertion statement.
   It only generates code if PEGASUS_DEBUG is defined
   This statement tests the condition defined by the parameters and
   if not True executes an number of tasks and abort the server !
*/

#ifdef PEGASUS_DEBUG
# define PEGASUS_DEBUG_ASSERT(COND)                                         \
      do                                                                    \
      {                                                                     \
          if (!(COND))                                                      \
          {                                                                 \
             fprintf(stderr,                                                \
                  "\nPEGASUS_DEBUG_ASSERT: Assertation \'%s\' failed "      \
                  "in file %s ,line %d\n",#COND,__FILE__,__LINE__);         \
             ctrace("PEGASUS_DEBUG_ASSERT: Assertation \'"                  \
                  #COND"\' failed.");                                       \
             kill(getpid(),SIGDUMP);                                        \
             abort();                                                       \
          }                                                                 \
      } while (0)
#else
# define PEGASUS_DEBUG_ASSERT(COND)
#endif

#define PEGASUS_TEST_ASSERT(COND)                                          \
    do                                                                     \
    {                                                                      \
        if (!(COND))                                                       \
        {                                                                  \
            fprintf(stderr,                                                \
                 "\nPEGASUS_TEST_ASSERT: Assertation \'%s\' failed "       \
                 "in file %s ,line %d\n",#COND,__FILE__,__LINE__);         \
            ctrace("PEGASUS_TEST_ASSERT: Assertation \'"                   \
                 #COND"\' failed.");                                       \
            kill(getpid(),SIGDUMP);                                        \
            abort();                                                       \
        }                                                                  \
    } while (0)
#endif  /* Pegasus_Assert_ZOS_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2