Data Structures | Defines | Functions

# keyring.c File Reference

`#include "wizard/studio.h"`
`#include "wizard/blob-private.h"`
`#include "wizard/exception.h"`
`#include "wizard/exception-private.h"`
`#include "wizard/file.h"`
`#include "wizard/keyring.h"`
`#include "wizard/magick.h"`
`#include "wizard/memory_.h"`
`#include "wizard/utility.h"`
`#include "wizard/xml-tree.h"`

## Data Structures

struct | _KeyringInfo

## Defines

#define | KeyringFilename "keyring.xdm"
#define | KeyringFiletype "keyring"
#define | KeyringProtocolMajorVersion 1
#define | KeyringProtocolMinorVersion 1

## Functions

WizardExport KeyringInfo * | AcquireKeyringInfo (const char *path)
WizardExport KeyringInfo * | DestroyKeyringInfo (KeyringInfo *keyring_info)
WizardExport WizardBooleanType | ExportKeyringKey (KeyringInfo *keyring_info, ExceptionInfo *exception)
WizardExport const StringInfo * | GetKeyringKey (const KeyringInfo *keyring_info)
WizardExport const StringInfo * | GetKeyringNonce (const KeyringInfo *keyring_info)
WizardExport WizardBooleanType | ImportKeyringKey (KeyringInfo *keyring_info, ExceptionInfo *exception)
WizardExport WizardBooleanType | PrintKeyringProperties (const char *path, BlobInfo *keyring_blob, ExceptionInfo *exception)
WizardExport void | SetKeyringId (KeyringInfo *keyring_info, const StringInfo *id)
WizardExport void | SetKeyringKey (KeyringInfo *keyring_info, const StringInfo *key)
WizardExport void | SetKeyringNonce (KeyringInfo *keyring_info, const StringInfo *nonce)
WizardExport void | SetKeyringPath (KeyringInfo *keyring_info, const char *path)

## Define Documentation

#define KeyringFilename "keyring.xdm"

Referenced by ExportKeyringKey(), ImportKeyringKey(), and PrintKeyringProperties().

#define KeyringFiletype "keyring"

Referenced by ExportKeyringKey(), ImportKeyringKey(), and PrintKeyringProperties().

#define KeyringProtocolMajorVersion 1

#define KeyringProtocolMinorVersion 1

## Function Documentation

WizardExport KeyringInfo* AcquireKeyringInfo | ( | const char * | path | ) |

References AcquireWizardMemory(), ConstantString(), _KeyringInfo::id, _KeyringInfo::key, KeyringDomain, MemoryError, _KeyringInfo::nonce, _KeyringInfo::path, _KeyringInfo::protocol_major, _KeyringInfo::protocol_minor, ResetWizardMemory(), _KeyringInfo::signature, ThrowWizardFatalError, and _KeyringInfo::timestamp.

Referenced by AcquireSecretInfo(), and ImportKeyringKey().

WizardExport KeyringInfo* DestroyKeyringInfo | ( | KeyringInfo * | keyring_info | ) |

References DestroyString(), DestroyStringInfo(), GetWizardModule, _KeyringInfo::id, _KeyringInfo::key, KeymapDomain, LogWizardEvent(), _KeyringInfo::nonce, _KeyringInfo::path, RelinquishWizardMemory(), _KeyringInfo::signature, TraceEvent, WizardAssert, and WizardSignature.

Referenced by DestroySecretInfo(), and ImportKeyringKey().

WizardExport WizardBooleanType ExportKeyringKey | ( | KeyringInfo * | keyring_info,
|  | ExceptionInfo * | exception |
| ) |  |  |

References AcquireFileInfo(), AcquireStringInfo(), CloneStringInfo(), CompareStringInfo(), DestroyFileInfo(), DestroyStringInfo(), GetFilePath(), GetStringInfoDatum(), GetStringInfoLength(), GetWizardMagick(), GetWizardModule, _KeyringInfo::id, KeymapDomain, KeyringFilename, KeyringFiletype, LogWizardEvent(), _KeyringInfo::path, _KeyringInfo::protocol_major, _KeyringInfo::protocol_minor, ReadFile16Bits(), ReadFile32Bits(), ReadFile64Bits(), ReadFileChunk(), ReadFileMode, SetKeyringKey(), SetKeyringNonce(), _KeyringInfo::signature, ThrowWizardException(), _KeyringInfo::timestamp, TraceEvent, WizardAssert, WizardFalse, WizardMagick, WizardSignature, and WizardTrue.

Referenced by AuthenticateSecretKey(), GenerateSecretKey(), and ImportKeyringKey().

WizardExport const StringInfo* GetKeyringKey | ( | const KeyringInfo * | keyring_info | ) |

References GetWizardModule, _KeyringInfo::key, KeyringDomain, LogWizardEvent(), _KeyringInfo::signature, TraceEvent, WizardAssert, and WizardSignature.

Referenced by AuthenticateSecretKey(), and GenerateSecretKey().

WizardExport const StringInfo* GetKeyringNonce | ( | const KeyringInfo * | keyring_info | ) |

References GetWizardModule, KeyringDomain, LogWizardEvent(), _KeyringInfo::nonce, _KeyringInfo::signature, TraceEvent, WizardAssert, and WizardSignature.

Referenced by AuthenticateSecretKey(), and GenerateSecretKey().

WizardExport WizardBooleanType ImportKeyringKey | ( | KeyringInfo * | keyring_info,
|  | ExceptionInfo * | exception |
| ) |  |  |

References AcquireFileInfo(), AcquireKeyringInfo(), DestroyFileInfo(), DestroyKeyringInfo(), DestroyString(), DestroyStringInfo(), ExportKeyringKey(), GetFileDescriptor(), GetFilePath(), GetStringInfoDatum(), GetStringInfoLength(), GetWizardMagick(), GetWizardModule, _KeyringInfo::id, _KeyringInfo::key, KeymapDomain, KeyringFilename, KeyringFiletype, LogWizardEvent(), _KeyringInfo::nonce, _KeyringInfo::path, _KeyringInfo::protocol_major, _KeyringInfo::protocol_minor, SetKeyringId(), _KeyringInfo::signature, StringInfoToHexString(), ThrowWizardException(), _KeyringInfo::timestamp, TraceEvent, WizardAssert, WizardFalse, WizardMagick, WizardSeek, WizardSignature, WizardTrue, WriteFile16Bits(), WriteFile32Bits(), WriteFile64Bits(), WriteFileChunk(), and WriteFileMode.

Referenced by GenerateSecretKey().

WizardExport WizardBooleanType PrintKeyringProperties | ( | const char * | path,
|  | BlobInfo * | keyring_blob,
|  | ExceptionInfo * | exception |
| ) |  |  |

References AcquireFileInfo(), AcquireString(), AcquireStringInfo(), CanonicalXMLContent(), CloneStringInfo(), CompareStringInfo(), ConcatenateString(), DestroyFileInfo(), DestroyString(), DestroyStringInfo(), FileError, FormatWizardString(), FormatWizardTime(), GetFilePath(), GetFileProperties(), GetStringInfoDatum(), GetStringInfoLength(), GetWizardMagick(), GetWizardModule, KeymapDomain, KeyringFilename, KeyringFiletype, LogWizardEvent(), WizardPathExtent, _KeyringInfo::protocol_major, _KeyringInfo::protocol_minor, ReadFile16Bits(), ReadFile32Bits(), ReadFile64Bits(), ReadFileChunk(), ReadFileMode, ResetWizardMemory(), _KeyringInfo::signature, StringInfoToHexString(), ThrowFileException, ThrowWizardException(), _KeyringInfo::timestamp, TraceEvent, WizardAssert, WizardFalse, WizardMagick, WizardSignature, WizardTrue, and WriteBlob().

WizardExport void SetKeyringId | ( | KeyringInfo * | keyring_info,
|  | const StringInfo * | id |
| ) |  |  |

References CloneStringInfo(), DestroyStringInfo(), _KeyringInfo::id, KeymapDomain, _KeyringInfo::signature, WizardAssert, and WizardSignature.

Referenced by AuthenticateSecretKey(), GenerateSecretKey(), and ImportKeyringKey().

WizardExport void SetKeyringKey | ( | KeyringInfo * | keyring_info,
|  | const StringInfo * | key |
| ) |  |  |

References CloneStringInfo(), DestroyStringInfo(), _KeyringInfo::key, KeymapDomain, _KeyringInfo::signature, WizardAssert, and WizardSignature.

Referenced by ExportKeyringKey(), and GenerateSecretKey().

WizardExport void SetKeyringNonce | ( | KeyringInfo * | keyring_info,
|  | const StringInfo * | nonce |
| ) |  |  |

References CloneStringInfo(), DestroyStringInfo(), KeymapDomain, _KeyringInfo::nonce, _KeyringInfo::signature, WizardAssert, and WizardSignature.

Referenced by ExportKeyringKey(), and GenerateSecretKey().

WizardExport void SetKeyringPath | ( | KeyringInfo * | keyring_info,
|  | const char * | path |
| ) |  |  |

References CloneString(), KeymapDomain, _KeyringInfo::path, _KeyringInfo::signature, WizardAssert, and WizardSignature.