View | Details | Raw Unified | Return to bug 196800 | Differences between
and this patch

Collapse All | Expand All

(-)src/msoft.c (-3 / +3 lines)
Lines 164-170 Link Here
164
static void
164
static void
165
DesEncrypt(const u_char *clear, u_char *key0, u_char *cypher)
165
DesEncrypt(const u_char *clear, u_char *key0, u_char *cypher)
166
{
166
{
167
  des_key_schedule	ks;
167
  DES_key_schedule	ks;
168
  u_char		key[8];
168
  u_char		key[8];
169
169
170
/* Create DES key */
170
/* Create DES key */
Lines 177-187 Link Here
177
  key[5] = (key0[4] << 3) | (key0[5] >> 5);
177
  key[5] = (key0[4] << 3) | (key0[5] >> 5);
178
  key[6] = (key0[5] << 2) | (key0[6] >> 6);
178
  key[6] = (key0[5] << 2) | (key0[6] >> 6);
179
  key[7] = key0[6] << 1;
179
  key[7] = key0[6] << 1;
180
  des_set_key((des_cblock *) key, ks);
180
  DES_set_key((DES_cblock *) key, &ks);
181
181
182
/* Encrypt using key */
182
/* Encrypt using key */
183
183
184
  des_ecb_encrypt((des_cblock *) clear, (des_cblock *) cypher, ks, 1);
184
  DES_ecb_encrypt((DES_cblock *) clear, (DES_cblock *) cypher, &ks, 1);
185
}
185
}
186
186
187
/*
187
/*
(-)src/ecp_dese.h (-3 / +3 lines)
Lines 30-40 Link Here
30
  
30
  
31
  struct desinfo
31
  struct desinfo
32
  {
32
  {
33
    des_cblock		xmit_ivec;	/* Xmit initialization vector */
33
    DES_cblock		xmit_ivec;	/* Xmit initialization vector */
34
    des_cblock		recv_ivec;	/* Recv initialization vector */
34
    DES_cblock		recv_ivec;	/* Recv initialization vector */
35
    u_int16_t		xmit_seq;	/* Transmit sequence number */
35
    u_int16_t		xmit_seq;	/* Transmit sequence number */
36
    u_int16_t		recv_seq;	/* Receive sequence number */
36
    u_int16_t		recv_seq;	/* Receive sequence number */
37
    des_key_schedule	ks;		/* Key schedule */
37
    DES_key_schedule	ks;		/* Key schedule */
38
    struct dese_stats	recv_stats;	
38
    struct dese_stats	recv_stats;	
39
    struct dese_stats	xmit_stats;	
39
    struct dese_stats	xmit_stats;	
40
  };
40
  };
(-)src/ecp_dese_bis.h (-3 / +3 lines)
Lines 30-40 Link Here
30
  
30
  
31
  struct desebisinfo
31
  struct desebisinfo
32
  {
32
  {
33
    des_cblock		xmit_ivec;	/* Xmit initialization vector */
33
    DES_cblock		xmit_ivec;	/* Xmit initialization vector */
34
    des_cblock		recv_ivec;	/* Recv initialization vector */
34
    DES_cblock		recv_ivec;	/* Recv initialization vector */
35
    u_int16_t		xmit_seq;	/* Transmit sequence number */
35
    u_int16_t		xmit_seq;	/* Transmit sequence number */
36
    u_int16_t		recv_seq;	/* Receive sequence number */
36
    u_int16_t		recv_seq;	/* Receive sequence number */
37
    des_key_schedule	ks;		/* Key schedule */
37
    DES_key_schedule	ks;		/* Key schedule */
38
    struct desebis_stats recv_stats;	
38
    struct desebis_stats recv_stats;	
39
    struct desebis_stats xmit_stats;	
39
    struct desebis_stats xmit_stats;	
40
  };
40
  };
(-)src/ecp_dese.c (-7 / +6 lines)
Lines 89-99 Link Here
89
{
89
{
90
  EcpState	const ecp = &b->ecp;
90
  EcpState	const ecp = &b->ecp;
91
  DesInfo	const des = &ecp->des;
91
  DesInfo	const des = &ecp->des;
92
  des_cblock	key;
92
  DES_cblock	key;
93
93
94
  des_check_key = FALSE;
94
  DES_string_to_key(ecp->key, &key);
95
  des_string_to_key(ecp->key, &key);
95
  DES_set_key(&key, &des->ks);
96
  des_set_key(&key, des->ks);
97
  des->xmit_seq = 0;
96
  des->xmit_seq = 0;
98
  des->recv_seq = 0;
97
  des->recv_seq = 0;
99
}
98
}
Lines 191-197 Link Here
191
  {
190
  {
192
    u_char	*const block = MBDATA(cypher) + DES_OVERHEAD + k;
191
    u_char	*const block = MBDATA(cypher) + DES_OVERHEAD + k;
193
192
194
    des_cbc_encrypt(block, block, 8, des->ks, &des->xmit_ivec, TRUE);
193
    DES_cbc_encrypt(block, block, 8, &des->ks, &des->xmit_ivec, TRUE);
195
    memcpy(des->xmit_ivec, block, 8);
194
    memcpy(des->xmit_ivec, block, 8);
196
  }
195
  }
197
196
Lines 259-268 Link Here
259
  for (k = 0; k < clen; k += 8)
258
  for (k = 0; k < clen; k += 8)
260
  {
259
  {
261
    u_char	*const block = MBDATA(plain) + k;
260
    u_char	*const block = MBDATA(plain) + k;
262
    des_cblock	next_ivec;
261
    DES_cblock	next_ivec;
263
262
264
    memcpy(next_ivec, block, 8);
263
    memcpy(next_ivec, block, 8);
265
    des_cbc_encrypt(block, block, 8, des->ks, &des->recv_ivec, FALSE);
264
    DES_cbc_encrypt(block, block, 8, &des->ks, &des->recv_ivec, FALSE);
266
    memcpy(des->recv_ivec, next_ivec, 8);
265
    memcpy(des->recv_ivec, next_ivec, 8);
267
  }
266
  }
268
267
(-)src/ecp_dese_bis.c (-7 / +6 lines)
Lines 89-99 Link Here
89
{
89
{
90
  EcpState	const ecp = &b->ecp;
90
  EcpState	const ecp = &b->ecp;
91
  DeseBisInfo	const des = &ecp->desebis;
91
  DeseBisInfo	const des = &ecp->desebis;
92
  des_cblock	key;
92
  DES_cblock	key;
93
93
94
  des_check_key = FALSE;
94
  DES_string_to_key(ecp->key, &key);
95
  des_string_to_key(ecp->key, &key);
95
  DES_set_key(&key, &des->ks);
96
  des_set_key(&key, des->ks);
97
  des->xmit_seq = 0;
96
  des->xmit_seq = 0;
98
  des->recv_seq = 0;
97
  des->recv_seq = 0;
99
}
98
}
Lines 204-210 Link Here
204
  {
203
  {
205
    u_char	*const block = MBDATA(cypher) + DES_OVERHEAD + k;
204
    u_char	*const block = MBDATA(cypher) + DES_OVERHEAD + k;
206
205
207
    des_cbc_encrypt(block, block, 8, des->ks, &des->xmit_ivec, TRUE);
206
    DES_cbc_encrypt(block, block, 8, &des->ks, &des->xmit_ivec, TRUE);
208
    memcpy(des->xmit_ivec, block, 8);
207
    memcpy(des->xmit_ivec, block, 8);
209
  }
208
  }
210
209
Lines 272-281 Link Here
272
  for (k = 0; k < clen; k += 8)
271
  for (k = 0; k < clen; k += 8)
273
  {
272
  {
274
    u_char	*const block = MBDATA(plain) + k;
273
    u_char	*const block = MBDATA(plain) + k;
275
    des_cblock	next_ivec;
274
    DES_cblock	next_ivec;
276
275
277
    memcpy(next_ivec, block, 8);
276
    memcpy(next_ivec, block, 8);
278
    des_cbc_encrypt(block, block, 8, des->ks, &des->recv_ivec, FALSE);
277
    DES_cbc_encrypt(block, block, 8, &des->ks, &des->recv_ivec, FALSE);
279
    memcpy(des->recv_ivec, next_ivec, 8);
278
    memcpy(des->recv_ivec, next_ivec, 8);
280
  }
279
  }
281
280

Return to bug 196800