diff rvinterf/etmsync/cl_des.h @ 14:3d148edb87c2

eliminated the dependency on OpenSSL for Pirelli IMEI DES decryption
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 03 Oct 2016 07:00:55 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/rvinterf/etmsync/cl_des.h	Mon Oct 03 07:00:55 2016 +0000
@@ -0,0 +1,36 @@
+/*
+ * This DES implementation is used for the purpose of decrypting
+ * Pirelli's factory IMEI record; it has been lifted out of TI's
+ * reference GSM firmware source.
+ */
+
+#ifndef CL_DES_H
+#define CL_DES_H
+
+/**********************************************************************************/
+
+#define CL_DES_BUFFER_SIZE   8
+#define CL_DES_KEY_SIZE      8
+#define CL_DES_ENCRYPTION    1
+#define CL_DES_DECRYPTION    2
+
+/*
++------------------------------------------------------------------------------
+| Function    : cl_des
++------------------------------------------------------------------------------
+| Description : The function performs DES encrypting or decrypting
+|
+| Parameters  : inMsgPtr   : pointer to input message M. The length of message
+|                            has to be min. 8 bytes e.g. M = 0123456789abcdef
+|               desKeyPtr  : pointer to DES key. Length has to be 8 bytes
+|                outMsgPtr : output encrypted/decrypted message. The length is 8 b.
+|                     code : CL_DES_ENCRYPTION, CL_DES_DECRYPTION
++------------------------------------------------------------------------------
+*/
+extern void cl_des(unsigned char *inMsgPtr, unsigned char *desKeyPtr,
+		   unsigned char *outMsgPtr, unsigned char code);
+
+
+/**********************************************************************************/
+
+#endif /* CL_DES_H */