/* * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy * in the file LICENSE in the source distribution or at * https://www.openssl.org/source/license.html */ /* * RC2 low level APIs are deprecated for public use, but still ok for internal * use. */ #include "internal/deprecated.h" #include #include "rc2_local.h" #include /*- * RC2 as implemented frm a posting from * Newsgroups: sci.crypt * Subject: Specification for Ron Rivests Cipher No.2 * Message-ID: <4fk39f$f70@net.auckland.ac.nz> * Date: 11 Feb 1996 06:45:03 GMT */ void RC2_ecb_encrypt(const unsigned char *in, unsigned char *out, RC2_KEY *ks, int encrypt) { unsigned long l, d[2]; c2l(in, l); d[0] = l; c2l(in, l); d[1] = l; if (encrypt) RC2_encrypt(d, ks); else RC2_decrypt(d, ks); l = d[0]; l2c(l, out); l = d[1]; l2c(l, out); l = d[0] = d[1] = 0; }