cbc.c (270256) | cbc.c (298640) |
---|---|
1/* cbc.c: This file contains the encryption routines for the ed line editor */ 2/*- 3 * Copyright (c) 1993 The Regents of the University of California. 4 * All rights reserved. 5 * 6 * Copyright (c) 1993 Andrew Moore, Talke Studio. 7 * All rights reserved. 8 * --- 18 unchanged lines hidden (view full) --- 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 */ 33 34#include <sys/cdefs.h> | 1/* cbc.c: This file contains the encryption routines for the ed line editor */ 2/*- 3 * Copyright (c) 1993 The Regents of the University of California. 4 * All rights reserved. 5 * 6 * Copyright (c) 1993 Andrew Moore, Talke Studio. 7 * All rights reserved. 8 * --- 18 unchanged lines hidden (view full) --- 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 */ 33 34#include <sys/cdefs.h> |
35__FBSDID("$FreeBSD: head/bin/ed/cbc.c 270256 2014-08-21 02:40:33Z pfg $"); | 35__FBSDID("$FreeBSD: head/bin/ed/cbc.c 298640 2016-04-26 14:31:48Z pfg $"); |
36 37#include <sys/types.h> 38#include <errno.h> 39#include <pwd.h> 40#ifdef DES 41#include <time.h> 42#include <openssl/des.h> 43#define ED_DES_INCLUDES --- 208 unchanged lines hidden (view full) --- 252 /* 253 * leading '0b' or '0B' == binary key 254 */ 255 if (kbuf[0] == '0' && (kbuf[1] == 'b' || kbuf[1] == 'B')) { 256 kbuf = &kbuf[2]; 257 /* 258 * now translate it, bombing on any illegal binary digit 259 */ | 36 37#include <sys/types.h> 38#include <errno.h> 39#include <pwd.h> 40#ifdef DES 41#include <time.h> 42#include <openssl/des.h> 43#define ED_DES_INCLUDES --- 208 unchanged lines hidden (view full) --- 252 /* 253 * leading '0b' or '0B' == binary key 254 */ 255 if (kbuf[0] == '0' && (kbuf[1] == 'b' || kbuf[1] == 'B')) { 256 kbuf = &kbuf[2]; 257 /* 258 * now translate it, bombing on any illegal binary digit 259 */ |
260 for (i = 0; kbuf[i] && i < 16; i++) | 260 for (i = 0; i < 16 && kbuf[i]; i++) |
261 if ((nbuf[i] = hex_to_binary((int) kbuf[i], 2)) == -1) 262 des_error("bad binary digit in key"); 263 while (i < 64) 264 nbuf[i++] = 0; 265 for (i = 0; i < 8; i++) 266 for (j = 0; j < 8; j++) 267 obuf[i] = (obuf[i]<<1)|nbuf[8*i+j]; 268 /* preserve parity bits */ --- 128 unchanged lines hidden --- | 261 if ((nbuf[i] = hex_to_binary((int) kbuf[i], 2)) == -1) 262 des_error("bad binary digit in key"); 263 while (i < 64) 264 nbuf[i++] = 0; 265 for (i = 0; i < 8; i++) 266 for (j = 0; j < 8; j++) 267 obuf[i] = (obuf[i]<<1)|nbuf[8*i+j]; 268 /* preserve parity bits */ --- 128 unchanged lines hidden --- |