Select Git revision
-
Fredrik Hübinette (Hubbe) authored
Rev: README:1.1 Rev: bin/create_testsuite:1.3 Rev: bin/hilfe.lpc:1.2 Rev: bin/rsif:1.2 Rev: bin/uhttpd.lpc:1.2 Rev: doc/simulated/open:1.1 Rev: lib/master.lpc:1.2 Rev: lib/simulate.lpc:1.4 Rev: lib/testsuite.lpc:1.3 Rev: src/BUGS:1.3 Rev: src/Makefile.in:1.6 Rev: src/Makefile.in.src:1.2 Rev: src/README:1.2 Rev: src/add_efun.c:1.2 Rev: src/add_efun.h:1.2 Rev: src/array.c:1.4 Rev: src/array.h:1.2 Rev: src/backend.c:1.3 Rev: src/backend.h:1.2 Rev: src/builtin_efuns.c:1.2 Rev: src/builtin_efuns.h:1.2 Rev: src/call_out.c:1.5 Rev: src/call_out.h:1.2 Rev: src/callback.c:1.2 Rev: src/callback.h:1.2 Rev: src/config.h:1.6 Rev: src/configure.in:1.9 Rev: src/debug.c:1.4 Rev: src/debug.h:1.4 Rev: src/docode.c:1.4 Rev: src/docode.h:1.2 Rev: src/dynamic_buffer.c:1.3 Rev: src/dynamic_buffer.h:1.2 Rev: src/efun.h:1.2 Rev: src/error.c:1.2 Rev: src/error.h:1.2 Rev: src/fd_control.c:1.2 Rev: src/fd_control.h:1.2 Rev: src/fsort.c:1.2 Rev: src/fsort.h:1.2 Rev: src/global.h:1.2 Rev: src/hashtable.c:1.2 Rev: src/hashtable.h:1.2 Rev: src/interpret.c:1.5 Rev: src/interpret.h:1.2 Rev: src/language.y:1.3 Rev: src/las.c:1.3 Rev: src/las.h:1.3 Rev: src/lex.c:1.3 Rev: src/lex.h:1.2 Rev: src/list.c:1.3 Rev: src/list.h:1.2 Rev: src/lpc_signal.c:1.1 Rev: src/lpc_signal.h:1.1 Rev: src/lpc_types.c:1.3 Rev: src/lpc_types.h:1.2 Rev: src/machine.h.in:1.3 Rev: src/macros.h:1.4 Rev: src/main.c:1.8 Rev: src/main.h:1.2 Rev: src/mapping.c:1.4 Rev: src/mapping.h:1.2 Rev: src/memory.c:1.3 Rev: src/memory.h:1.2 Rev: src/module.c:1.2 Rev: src/module.h:1.2 Rev: src/modules/files/Makefile.in:1.3 Rev: src/modules/files/Makefile.in.src:1.2 Rev: src/modules/files/configure.in:1.5 Rev: src/modules/files/datagram.c:1.2 Rev: src/modules/files/efuns.c:1.4 Rev: src/modules/files/file.c:1.5 Rev: src/modules/files/file.h:1.3 Rev: src/modules/files/file_machine.h.in:1.3 Rev: src/modules/files/socket.c:1.6 Rev: src/modules/math/Makefile.in:1.4 Rev: src/modules/math/Makefile.in.src:1.3 Rev: src/modules/math/math.c:1.2 Rev: src/modules/regexp/Makefile.in:1.3 Rev: src/modules/regexp/Makefile.in.src:1.2 Rev: src/modules/regexp/glue.c:1.2 Rev: src/modules/regexp/regexp.h:1.2 Rev: src/modules/sprintf/Makefile.in:1.3 Rev: src/modules/sprintf/Makefile.in.src:1.2 Rev: src/modules/sprintf/sprintf.c:1.2 Rev: src/object.c:1.3 Rev: src/object.h:1.2 Rev: src/opcodes.c:1.6 Rev: src/opcodes.h:1.2 Rev: src/operators.c:1.3 Rev: src/operators.h:1.2 Rev: src/otable.h:1.2 Rev: src/port.c:1.9 Rev: src/port.h:1.4 Rev: src/program.h:1.2 Rev: src/rusage.c:1.3 Rev: src/rusage.h:1.2 Rev: src/stralloc.c:1.3 Rev: src/stralloc.h:1.3 Rev: src/stuff.c:1.2 Rev: src/stuff.h:1.2 Rev: src/svalue.c:1.4 Rev: src/svalue.h:1.2 Rev: src/todo:1.2 Rev: src/types.h:1.6 Rev: src/ualarm.c:1.2
Fredrik Hübinette (Hubbe) authoredRev: README:1.1 Rev: bin/create_testsuite:1.3 Rev: bin/hilfe.lpc:1.2 Rev: bin/rsif:1.2 Rev: bin/uhttpd.lpc:1.2 Rev: doc/simulated/open:1.1 Rev: lib/master.lpc:1.2 Rev: lib/simulate.lpc:1.4 Rev: lib/testsuite.lpc:1.3 Rev: src/BUGS:1.3 Rev: src/Makefile.in:1.6 Rev: src/Makefile.in.src:1.2 Rev: src/README:1.2 Rev: src/add_efun.c:1.2 Rev: src/add_efun.h:1.2 Rev: src/array.c:1.4 Rev: src/array.h:1.2 Rev: src/backend.c:1.3 Rev: src/backend.h:1.2 Rev: src/builtin_efuns.c:1.2 Rev: src/builtin_efuns.h:1.2 Rev: src/call_out.c:1.5 Rev: src/call_out.h:1.2 Rev: src/callback.c:1.2 Rev: src/callback.h:1.2 Rev: src/config.h:1.6 Rev: src/configure.in:1.9 Rev: src/debug.c:1.4 Rev: src/debug.h:1.4 Rev: src/docode.c:1.4 Rev: src/docode.h:1.2 Rev: src/dynamic_buffer.c:1.3 Rev: src/dynamic_buffer.h:1.2 Rev: src/efun.h:1.2 Rev: src/error.c:1.2 Rev: src/error.h:1.2 Rev: src/fd_control.c:1.2 Rev: src/fd_control.h:1.2 Rev: src/fsort.c:1.2 Rev: src/fsort.h:1.2 Rev: src/global.h:1.2 Rev: src/hashtable.c:1.2 Rev: src/hashtable.h:1.2 Rev: src/interpret.c:1.5 Rev: src/interpret.h:1.2 Rev: src/language.y:1.3 Rev: src/las.c:1.3 Rev: src/las.h:1.3 Rev: src/lex.c:1.3 Rev: src/lex.h:1.2 Rev: src/list.c:1.3 Rev: src/list.h:1.2 Rev: src/lpc_signal.c:1.1 Rev: src/lpc_signal.h:1.1 Rev: src/lpc_types.c:1.3 Rev: src/lpc_types.h:1.2 Rev: src/machine.h.in:1.3 Rev: src/macros.h:1.4 Rev: src/main.c:1.8 Rev: src/main.h:1.2 Rev: src/mapping.c:1.4 Rev: src/mapping.h:1.2 Rev: src/memory.c:1.3 Rev: src/memory.h:1.2 Rev: src/module.c:1.2 Rev: src/module.h:1.2 Rev: src/modules/files/Makefile.in:1.3 Rev: src/modules/files/Makefile.in.src:1.2 Rev: src/modules/files/configure.in:1.5 Rev: src/modules/files/datagram.c:1.2 Rev: src/modules/files/efuns.c:1.4 Rev: src/modules/files/file.c:1.5 Rev: src/modules/files/file.h:1.3 Rev: src/modules/files/file_machine.h.in:1.3 Rev: src/modules/files/socket.c:1.6 Rev: src/modules/math/Makefile.in:1.4 Rev: src/modules/math/Makefile.in.src:1.3 Rev: src/modules/math/math.c:1.2 Rev: src/modules/regexp/Makefile.in:1.3 Rev: src/modules/regexp/Makefile.in.src:1.2 Rev: src/modules/regexp/glue.c:1.2 Rev: src/modules/regexp/regexp.h:1.2 Rev: src/modules/sprintf/Makefile.in:1.3 Rev: src/modules/sprintf/Makefile.in.src:1.2 Rev: src/modules/sprintf/sprintf.c:1.2 Rev: src/object.c:1.3 Rev: src/object.h:1.2 Rev: src/opcodes.c:1.6 Rev: src/opcodes.h:1.2 Rev: src/operators.c:1.3 Rev: src/operators.h:1.2 Rev: src/otable.h:1.2 Rev: src/port.c:1.9 Rev: src/port.h:1.4 Rev: src/program.h:1.2 Rev: src/rusage.c:1.3 Rev: src/rusage.h:1.2 Rev: src/stralloc.c:1.3 Rev: src/stralloc.h:1.3 Rev: src/stuff.c:1.2 Rev: src/stuff.h:1.2 Rev: src/svalue.c:1.4 Rev: src/svalue.h:1.2 Rev: src/todo:1.2 Rev: src/types.h:1.6 Rev: src/ualarm.c:1.2
arcfour.h 1.55 KiB
/* arcfour.h
*
* The arcfour/rc4 stream cipher.
*/
/* nettle, low-level cryptographics library
*
* Copyright (C) 2001 Niels Mller
*
* The nettle library is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or (at your
* option) any later version.
*
* The nettle library is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
* License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with the nettle library; see the file COPYING.LIB. If not, write to
* the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
* MA 02111-1307, USA.
*/
#ifndef NETTLE_ARCFOUR_H_INCLUDED
#define NETTLE_ARCFOUR_H_INCLUDED
#include <inttypes.h>
/* Minimum and maximum keysizes, and a reasonable default. In
* octets.*/
#define ARCFOUR_MIN_KEY_SIZE 1
#define ARCFOUR_MAX_KEY_SIZE 256
#define ARCFOUR_KEY_SIZE 16
struct arcfour_ctx
{
uint8_t S[256];
uint8_t i;
uint8_t j;
};
void
arcfour_set_key(struct arcfour_ctx *ctx,
unsigned length, const uint8_t *key);
void
arcfour_crypt(struct arcfour_ctx *ctx,
unsigned length, uint8_t *dst,
const uint8_t *src);
void
arcfour_stream(struct arcfour_ctx *ctx,
unsigned length, uint8_t *dst);
#endif /* NETTLE_ARCFOUR_H_INCLUDED */