Projekt

Allgemein

Profil

Herunterladen (8,04 KB) Statistiken
| Zweig: | Markierung: | Revision:
<?xml?>

<tm2>
<type id="GWEN_CRYPT_TOKEN_KEYINFO" type="pointer">
<descr>
</descr>
<lang id="c">
<identifier>GWEN_CRYPT_TOKEN_KEYINFO</identifier>
<prefix>GWEN_Crypt_Token_KeyInfo</prefix>
<baseFileName>ct_keyinfotest</baseFileName>
<flags>
with_inherit
with_xml
with_db
with_list1
with_list2
with_refcount
</flags>
<headers>
<header type="sys" loc="pre">gwenhywfar/types.h</header>
<header type="sys" loc="pre">gwenhywfar/buffer.h</header>
<header type="sys" loc="pre">gwenhywfar/text.h</header>
<header type="sys" loc="post">gwenhywfar/cryptalgo.h</header>
</headers>

<inlines>

<!-- Modulus functions -->
<inline loc="end" access="public">
<content>
$(api) void $(struct_prefix)_SetModulus($(struct_type) *st, const uint8_t *p, uint32_t len);
</content>
</inline>

<inline loc="code">
<content>
void $(struct_prefix)_SetModulus($(struct_type) *st, const uint8_t *p, uint32_t len) {
assert(st);
if (st->modulus)
GWEN_Buffer_free(st->modulus);
if (p && len) {
st->modulus=GWEN_Buffer_new(0, len, 0, 1);
GWEN_Buffer_AppendBytes(st->modulus, (const char*) p, len);
}
else
st->modulus=NULL;
}
</content>
</inline>

<inline loc="end" access="public">
<content>
$(api) const uint8_t* $(struct_prefix)_GetModulusData(const $(struct_type) *st);
</content>
</inline>

<inline loc="code">
<content>
const uint8_t* $(struct_prefix)_GetModulusData(const $(struct_type) *st) {
assert(st);
if (st->modulus)
return GWEN_Buffer_GetStart(st->modulus);
else
return NULL;
}
</content>
</inline>

<inline loc="end" access="public">
<content>
$(api) uint32_t $(struct_prefix)_GetModulusLen(const $(struct_type) *st);
</content>
</inline>

<inline loc="code">
<content>
uint32_t $(struct_prefix)_GetModulusLen(const $(struct_type) *st) {
assert(st);
if (st->modulus)
return GWEN_Buffer_GetUsedBytes(st->modulus);
else
return 0;
}
</content>
</inline>


<!-- Exponent functions -->
<inline loc="end" access="public">
<content>
$(api) void $(struct_prefix)_SetExponent($(struct_type) *st, const uint8_t *p, uint32_t len);
</content>
</inline>

<inline loc="code">
<content>
void $(struct_prefix)_SetExponent($(struct_type) *st, const uint8_t *p, uint32_t len) {
assert(st);
if (st->exponent)
GWEN_Buffer_free(st->exponent);
if (p && len) {
st->exponent=GWEN_Buffer_new(0, len, 0, 1);
GWEN_Buffer_AppendBytes(st->exponent, (const char*) p, len);
}
else
st->exponent=NULL;
}
</content>
</inline>

<inline loc="end" access="public">
<content>
$(api) const uint8_t* $(struct_prefix)_GetExponentData(const $(struct_type) *st);
</content>
</inline>

<inline loc="code">
<content>
const uint8_t* $(struct_prefix)_GetExponentData(const $(struct_type) *st) {
assert(st);
if (st->exponent)
return GWEN_Buffer_GetStart(st->exponent);
else
return NULL;
}
</content>
</inline>

<inline loc="end" access="public">
<content>
$(api) uint32_t $(struct_prefix)_GetExponentLen(const $(struct_type) *st);
</content>
</inline>

<inline loc="code">
<content>
uint32_t $(struct_prefix)_GetExponentLen(const $(struct_type) *st) {
assert(st);
if (st->exponent)
return GWEN_Buffer_GetUsedBytes(st->exponent);
else
return 0;
}
</content>
</inline>
</inlines>


</lang>

<defines>

<define id="GWEN_CRYPT_TOKEN_KEYFLAGS" prefix="GWEN_CRYPT_TOKEN_KEYFLAGS_">
<item name="HASSTATUS" value="0x00010000" />
<item name="HASMODULUS" value="0x00020000" />
<item name="HASEXPONENT" value="0x00040000" />
<item name="HASACTIONFLAGS" value="0x00080000" />
<item name="HASKEYVERSION" value="0x00100000" />
<item name="HASSIGNCOUNTER" value="0x00200000" />
<item name="HASKEYNUMBER" value="0x00400000" />
<item name="ACTIONMASK" value="0x0000000f" />
<item name="CANSIGN" value="0x00000001" />
<item name="CANVERIFY" value="0x00000002" />
<item name="CANENCIPHER" value="0x00000004" />
<item name="CANDECIPHER" value="0x00000008" />
</define>

</defines>


<enums>

<enum id="GWEN_CRYPT_TOKEN_KEYSTATUS" prefix="GWEN_Crypt_Token_KeyStatus" type="GWEN_CRYPT_TOKEN_KEYSTATUS">
<item name="free">
<descr>Key is unused</descr>
</item>
<item name="new">
<descr>Key is newly created</descr>
</item>
<item name="active">
<descr>Key is active</descr>
</item>
</enum>
</enums>

<members>
<member name="id" type="uint32_t" maxlen="8">
<default>0</default>
<preset>0</preset>
<flags>with_getbymember</flags>
<access>public</access>
</member>

<member name="keyDescr" type="char_ptr" maxlen="128" >
<default>NULL</default>
<preset>NULL</preset>
<access>public</access>
<flags>own</flags>
<setflags>const dup</setflags>
<getflags>const</getflags>
</member>

<member name="flags" type="uint32_t" maxlen="8">
<default>0</default>
<preset>0</preset>
<flags>with_flags</flags>
<access>public</access>
</member>

<member name="keySize" type="int" maxlen="8">
<default>0</default>
<preset>0</preset>
<flags>none</flags>
<access>public</access>
</member>

<member name="cryptAlgoId" type="int" maxlen="8">
<default>0</default>
<preset>0</preset>
<flags>none</flags>
<access>public</access>
</member>

<member name="modulus" type="gwen_buffer" maxlen="4096" >
<default>NULL</default>
<preset>NULL</preset>
<access>private</access>
<flags>own</flags>
<setflags>const dup omit</setflags>
<getflags>const omit</getflags>
</member>

<member name="exponent" type="gwen_buffer" maxlen="4096" >
<default>NULL</default>
<preset>NULL</preset>
<access>private</access>
<flags>own</flags>
<setflags>const dup omit</setflags>
<getflags>const omit</getflags>
</member>

<member name="keyNumber" type="uint32_t" maxlen="8">
<default>0</default>
<preset>0</preset>
<flags>none</flags>
<access>public</access>
</member>

<member name="keyVersion" type="uint32_t" maxlen="8">
<default>0</default>
<preset>0</preset>
<flags>none</flags>
<access>public</access>
</member>

<member name="signCounter" type="uint32_t" maxlen="8">
<default>0</default>
<preset>0</preset>
<flags>none</flags>
<access>public</access>
</member>


</members>
</type>
</tm2>


(13-13/26)