Patch title: Release 94 bulk changes
Abstract:
File: /pliant/util/crypto/rc4.pli
Key:
    Removed line
    Added line
   
abstract
  [This is RC4 Pliant implementation.] ; eol
  [See ] ; link "CipherSaber Home Page" "http://ciphersaber.


abstract
  [This is RC4 Pliant implementation.] ; eol
  [See ] ; link "CipherSaber Home Page" "http://ciphersaber.


module "legal.pli"



type RC4Ctx
  field Int x y
  field (Array Int 2^rc4_bits) perm

function rc4_init ctx key laps
  arg_w RC4Ctx ctx ; arg Str key ; arg Int laps
type RC4Ctx
  field Int x y
  field (Array Int 2^rc4_bits) perm

function rc4_init ctx key laps
  arg_w RC4Ctx ctx ; arg Str key ; arg Int laps
  var Str lkey := legal_key key
  implicit ctx
    for (var Int i) 0 2^rc4_bits-1
      perm i := i
    var Int j := 0
    for (var Int l) 1 laps
      for (var Int i) 0 2^rc4_bits-1
  implicit ctx
    for (var Int i) 0 2^rc4_bits-1
      perm i := i
    var Int j := 0
    for (var Int l) 1 laps
      for (var Int i) 0 2^rc4_bits-1
        j := j+perm:i+(lkey i%lkey:len):number .and. 2^rc4_b
        j := j+perm:i+(key i%key:len):number .and. 2^rc4_bits-1
        swap perm:i perm:j
    x := 0 ; y := 0


export RC4Ctx '. perm' rc4_bits
export rc4_init rc4_byte rc4_cipher
        swap perm:i perm:j
    x := 0 ; y := 0


export RC4Ctx '. perm' rc4_bits
export rc4_init rc4_byte rc4_cipher