/* * arcfive.c - stubs for RC5 - NOT a working implementation! * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #ifdef FREEBL_NO_DEPEND #include "stubs.h" #endif #include "blapi.h" #include "prerror.h" /******************************************/ /* ** RC5 symmetric block cypher -- 64-bit block size */ /* ** Create a new RC5 context suitable for RC5 encryption/decryption. ** "key" raw key data ** "len" the number of bytes of key data ** "iv" is the CBC initialization vector (if mode is NSS_RC5_CBC) ** "mode" one of NSS_RC5 or NSS_RC5_CBC ** ** When mode is set to NSS_RC5_CBC the RC5 cipher is run in "cipher block ** chaining" mode. */ RC5Context * RC5_CreateContext(const SECItem *key, unsigned int rounds, unsigned int wordSize, const unsigned char *iv, int mode) { PORT_SetError(PR_NOT_IMPLEMENTED_ERROR); return NULL; } /* ** Destroy an RC5 encryption/decryption context. ** "cx" the context ** "freeit" if PR_TRUE then free the object as well as its sub-objects */ void RC5_DestroyContext(RC5Context *cx, PRBool freeit) { PORT_SetError(PR_NOT_IMPLEMENTED_ERROR); } /* ** Perform RC5 encryption. ** "cx" the context ** "output" the output buffer to store the encrypted data. ** "outputLen" how much data is stored in "output". Set by the routine ** after some data is stored in output. ** "maxOutputLen" the maximum amount of data that can ever be ** stored in "output" ** "input" the input data ** "inputLen" the amount of input data */ SECStatus RC5_Encrypt(RC5Context *cx, unsigned char *output, unsigned int *outputLen, unsigned int maxOutputLen, const unsigned char *input, unsigned int inputLen) { PORT_SetError(PR_NOT_IMPLEMENTED_ERROR); return SECFailure; } /* ** Perform RC5 decryption. ** "cx" the context ** "output" the output buffer to store the decrypted data. ** "outputLen" how much data is stored in "output". Set by the routine ** after some data is stored in output. ** "maxOutputLen" the maximum amount of data that can ever be ** stored in "output" ** "input" the input data ** "inputLen" the amount of input data */ SECStatus RC5_Decrypt(RC5Context *cx, unsigned char *output, unsigned int *outputLen, unsigned int maxOutputLen, const unsigned char *input, unsigned int inputLen) { PORT_SetError(PR_NOT_IMPLEMENTED_ERROR); return SECFailure; }