Defines

# exception-private.h File Reference

`#include "wizard/log.h"`
`#include "wizard/string_.h"`

Go to the source code of this file.

## Defines
#define | CatchWizardException(severity, tag, context)
#define | WizardAssert(domain, predicate)
#define | ThrowFileException(exception, severity, context)
#define | ThrowWizardFatalError(domain, error)
#define | ThrowFatalException(severity, tag)

## Define Documentation

#define CatchWizardException | ( |  | severity,
|  |  | tag,
|  |  | context |
| ) |  |  |

Value:

    { \
      ExceptionInfo \
        *exception; \
     \
      exception=AcquireExceptionInfo(); \
      (void) ThrowWizardException(exception,GetWizardModule(),severity,tag,context); \
      CatchException(exception); \
      exception=DestroyExceptionInfo(exception); \
    }

#define ThrowFatalException | ( |  | severity,
|  |  | tag |
| ) |  |  |

Value:

    { \
      char \
         *message; \
     \
      message=GetExceptionMessage(errno); \
      CatchWizardException(severity,tag,message); \
      message=DestroyString(message); \
      _exit(127); \
    }

Referenced by AcquireExceptionInfo(), AcquireRandomInfo(), AcquireString(), AcquireStringInfo(), AllocateSemaphoreInfo(), CloneString(), ConcatenateString(), ConcatenateStringInfo(), ConstantString(), DestroySemaphoreInfo(), GenerateEntropicChaos(), GetPathComponents(), GetWizardOptions(), IncrementCipherNonce(), IncrementRandomNonce(), LoadConfigureList(), LoadLogList(), LoadMimeList(), LockSemaphoreInfo(), LockWizardMutex(), ParseEntities(), ParseInternalDoctype(), ParseProcessingInstructions(), ResizeWizardMemory(), SetStringInfoLength(), SetXMLTreeAttribute(), StringInfoToHexString(), StringToArgv(), SubstituteString(), ThrowException(), UnlockSemaphoreInfo(), and UnlockWizardMutex().

#define ThrowFileException | ( |  | exception,
|  |  | severity,
|  |  | context |
| ) |  |  |

Value:

    { \
      char \
         *message; \
     \
      message=GetExceptionMessage(errno); \
      (void) ThrowWizardException(exception,GetWizardModule(),severity, \
        "file exception `%s': %s",context,message); \
      message=DestroyString(message); \
    }

Referenced by LoadConfigureLists(), LoadLogLists(), and PrintKeyringProperties().

#define ThrowWizardFatalError | ( |  | domain,
|  |  | error |
| ) |  |  |

Value:

    { \
      char \
        context[WizardPathExtent], \
        tag[WizardPathExtent]; \
     \
      (void) FormatWizardString(tag,WizardPathExtent,"%ld\n",(long) domain); \
      (void) FormatWizardString(context,WizardPathExtent,"%ld\n",(long) error); \
      CatchWizardException(UndefinedException,tag,context); \
      _exit((domain << 3) | error); \
    }

Referenced by AcquireAESInfo(), AcquireAuthenticateInfo(), AcquireBZIPInfo(), AcquireCipherInfo(), AcquireCRC64Info(), AcquireEntropyInfo(), AcquireHashInfo(), AcquireHMACInfo(), AcquireKeyInfo(), AcquireKeyringInfo(), AcquireLZMAInfo(), AcquireMD5Info(), AcquireRandomInfo(), AcquireSecretInfo(), AcquireSerpentInfo(), AcquireSHA1Info(), AcquireSHA224Info(), AcquireSHA256Info(), AcquireSHA384Info(), AcquireSHA512Info(), AcquireTimerInfo(), AcquireTwofishInfo(), AcquireZIPInfo(), AuthenticateKey(), BalanceSplayTree(), bz_internal_error(), DecipherCipher(), DestroyAuthenticateInfo(), DestroyCipherInfo(), DestroyHashInfo(), EncipherCipher(), FinalizeHash(), GenerateAuthenticateKey(), GenerateCipherNonce(), GenerateSessionKey(), GetAuthenticateId(), GetAuthenticateKey(), GetAuthenticateKeyLength(), GetAuthenticatePassphrase(), GetEntropyChaos(), GetHashBlocksize(), GetHashDigestsize(), GetHashHexDigest(), GetKeyInfo(), IncreaseEntropy(), InitializeHash(), IterateOverSplayTree(), NewHashmap(), NewLinkedList(), NewSplayTree(), RestoreEntropy(), SetAuthenticateId(), SetCipherKey(), SetKeyInfo(), SplaySplayTree(), and UpdateHash().

#define WizardAssert | ( |  | domain,
|  |  | predicate |
| ) |  |  |

Value:

    { \
      if ((WizardBooleanType) (predicate) == WizardFalse) \
        ThrowWizardFatalError(domain,AssertError); \
    }

Referenced by AcquireUniqueFileResource(), AddPathToXMLTree(), AuthenticateKey(), AuthenticateSecretKey(), CloneSplayTree(), CloneString(), CloneStringInfo(), CompareStringInfo(), ConcatenateStringInfo(), ConfigureFileToStringInfo(), DecipherCBCMode(), DecipherCFBMode(), DecipherCipher(), DecipherCTRMode(), DecipherECBMode(), DecipherOFBMode(), DeleteNodeByValueFromSplayTree(), DeleteNodeFromSplayTree(), DestroyAESInfo(), DestroyAuthenticateInfo(), DestroyBZIPInfo(), DestroyCipherInfo(), DestroyEntropyInfo(), DestroyKeyInfo(), DestroyKeyringInfo(), DestroyLZMAInfo(), DestroyRandomInfo(), DestroySecretInfo(), DestroySerpentInfo(), DestroyStringInfo(), DestroyTimerInfo(), DestroyTwofishInfo(), DestroyXMLTree(), DestroyZIPInfo(), EncipherCBCMode(), EncipherCFBMode(), EncipherCipher(), EncipherCTRMode(), EncipherECBMode(), EncipherOFBMode(), ExportKeyringKey(), FileToString(), FileToStringInfo(), GenerateAuthenticateKey(), GenerateCipherNonce(), GenerateSecretKey(), GenerateSessionKey(), GetAESBlocksize(), GetAuthenticateId(), GetAuthenticateKey(), GetAuthenticateKeyLength(), GetAuthenticatePassphrase(), GetBZIPChaos(), GetCipherBlocksize(), GetCipherNonce(), GetCRC64Blocksize(), GetCRC64CyclicRedundancyCheck(), GetCRC64Digest(), GetCRC64Digestsize(), GetEntropyChaos(), GetEntropyFromReservoir(), GetHashBlocksize(), GetHashDigest(), GetHashDigestsize(), GetHashHexDigest(), GetHMACDigest(), GetHMACDigestsize(), GetKeyInfo(), GetKeyringKey(), GetKeyringNonce(), GetLZMAChaos(), GetMD5Blocksize(), GetMD5Digest(), GetMD5Digestsize(), GetNextKeyInSplayTree(), GetNextValueInSplayTree(), GetNextXMLTreeTag(), GetNumberOfNodesInSplayTree(), GetRandomKey(), GetSecretId(), GetSecretKey(), GetSecretKeyLength(), GetSecretPassphrase(), GetSerpentBlocksize(), GetSHA1Blocksize(), GetSHA1Digest(), GetSHA1Digestsize(), GetSHA224Blocksize(), GetSHA224Digest(), GetSHA224Digestsize(), GetSHA256Blocksize(), GetSHA256Digest(), GetSHA256Digestsize(), GetSHA384Blocksize(), GetSHA384Digest(), GetSHA384Digestsize(), GetSHA512Blocksize(), GetSHA512Digest(), GetSHA512Digestsize(), GetStringInfoCRC(), GetStringInfoDatum(), GetStringInfoLength(), GetStringInfoPath(), GetTwofishBlocksize(), GetValueFromSplayTree(), GetXMLTreeAttribute(), GetXMLTreeAttributes(), GetXMLTreeChild(), GetXMLTreeContent(), GetXMLTreeOrdered(), GetXMLTreePath(), GetXMLTreeProcessingInstructions(), GetXMLTreeSibling(), GetXMLTreeTag(), GetZIPChaos(), HexStringToStringInfo(), ImportKeyringKey(), IncreaseBZIP(), IncreaseEntropy(), IncreaseLZMA(), IncreaseZIP(), PrintKeyringProperties(), PrintStringInfo(), PruneTagFromXMLTree(), RelinquishUniqueFileResource(), RemoveNodeByValueFromSplayTree(), RemoveNodeFromSplayTree(), ResetCipherNonce(), ResetSplayTree(), ResetSplayTreeIterator(), ResetStringInfo(), RestoreBZIP(), RestoreEntropy(), RestoreLZMA(), RestoreZIP(), SaveEntropyToReservoir(), SetAESKey(), SetAuthenticateId(), SetAuthenticateKeyLength(), SetAuthenticatePassphrase(), SetCipherKey(), SetCipherNonce(), SetKeyInfo(), SetKeyringId(), SetKeyringKey(), SetKeyringNonce(), SetKeyringPath(), SetRandomKey(), SetSecretKeyLength(), SetSerpentKey(), SetStringInfo(), SetStringInfoDatum(), SetStringInfoLength(), SetStringInfoPath(), SetTwofishKey(), SetXMLTreeAttribute(), SetXMLTreeContent(), SplitStringInfo(), StringToStringInfo(), and XMLTreeInfoToXML().