Lines Matching defs:ctx

94     AlgContext *ctx;
122 ctx = mDNSPlatformMemAllocate(sizeof(AlgContext));
123 if (!ctx) return mDNSNULL;
124 // Create expects ctx->alg to be initialized
125 ctx->alg = alg;
126 err = func->Create(ctx);
129 ctx->type = type;
130 return ctx;
132 mDNSPlatformMemFree(ctx);
137 mDNSexport mStatus AlgDestroy(AlgContext *ctx)
141 if (ctx->type == CRYPTO_ALG)
142 func = CryptoAlgFuncs[ctx->alg];
143 else if (ctx->type == DIGEST_ALG)
144 func = DigestAlgFuncs[ctx->alg];
145 else if (ctx->type == ENC_ALG)
146 func = EncAlgFuncs[ctx->alg];
151 mDNSPlatformMemFree(ctx);
156 func->Destroy(ctx);
158 mDNSPlatformMemFree(ctx);
162 mDNSexport mDNSu32 AlgLength(AlgContext *ctx)
166 if (ctx->type == CRYPTO_ALG)
167 func = CryptoAlgFuncs[ctx->alg];
168 else if (ctx->type == DIGEST_ALG)
169 func = DigestAlgFuncs[ctx->alg];
170 else if (ctx->type == ENC_ALG)
171 func = EncAlgFuncs[ctx->alg];
181 return (func->Length(ctx));
186 mDNSexport mStatus AlgAdd(AlgContext *ctx, const void *data, mDNSu32 len)
190 if (ctx->type == CRYPTO_ALG)
191 func = CryptoAlgFuncs[ctx->alg];
192 else if (ctx->type == DIGEST_ALG)
193 func = DigestAlgFuncs[ctx->alg];
194 else if (ctx->type == ENC_ALG)
195 func = EncAlgFuncs[ctx->alg];
205 return (func->Add(ctx, data, len));
210 mDNSexport mStatus AlgVerify(AlgContext *ctx, mDNSu8 *key, mDNSu32 keylen, mDNSu8 *signature, mDNSu32 siglen)
214 if (ctx->type == CRYPTO_ALG)
215 func = CryptoAlgFuncs[ctx->alg];
216 else if (ctx->type == DIGEST_ALG)
217 func = DigestAlgFuncs[ctx->alg];
218 else if (ctx->type == ENC_ALG)
219 func = EncAlgFuncs[ctx->alg];
229 return (func->Verify(ctx, key, keylen, signature, siglen));
234 mDNSexport mDNSu8* AlgEncode(AlgContext *ctx)
238 if (ctx->type == CRYPTO_ALG)
239 func = CryptoAlgFuncs[ctx->alg];
240 else if (ctx->type == DIGEST_ALG)
241 func = DigestAlgFuncs[ctx->alg];
242 else if (ctx->type == ENC_ALG)
243 func = EncAlgFuncs[ctx->alg];
253 return (func->Encode(ctx));
258 mDNSexport mStatus AlgFinal(AlgContext *ctx, void *data, mDNSu32 len)
262 if (ctx->type == CRYPTO_ALG)
263 func = CryptoAlgFuncs[ctx->alg];
264 else if (ctx->type == DIGEST_ALG)
265 func = DigestAlgFuncs[ctx->alg];
266 else if (ctx->type == ENC_ALG)
267 func = EncAlgFuncs[ctx->alg];
277 return (func->Final(ctx, data, len));