crypto/idea/i_skey.c:83: error: BUFFER_OVERRUN_L1
  Offset: [8, +oo] Size: 6.
Showing all 5 steps of the trace


crypto/idea/i_skey.c:68:1: <Length trace>
66.   #endif
67.   
68. > void idea_set_encrypt_key(unsigned char *key, IDEA_KEY_SCHEDULE *ks)
69.   	{
70.   	int i;

crypto/idea/i_skey.c:68:1: Parameter `ks->data[*][*]`
66.   #endif
67.   
68. > void idea_set_encrypt_key(unsigned char *key, IDEA_KEY_SCHEDULE *ks)
69.   	{
70.   	int i;

crypto/idea/i_skey.c:73:2: Assignment
71.   	register IDEA_INT *kt,*kf,r0,r1,r2;
72.   
73.   	kt= &(ks->data[0][0]);
       ^
74.   	n2s(key,kt[0]); n2s(key,kt[1]); n2s(key,kt[2]); n2s(key,kt[3]);
75.   	n2s(key,kt[4]); n2s(key,kt[5]); n2s(key,kt[6]); n2s(key,kt[7]);

crypto/idea/i_skey.c:78:2: Assignment
76.   
77.   	kf=kt;
78.   	kt+=8;
       ^
79.   	for (i=0; i<6; i++)
80.   		{

crypto/idea/i_skey.c:83:3: Array access: Offset: [8, +oo] Size: 6
81.   		r2= kf[1];
82.   		r1= kf[2];
83.   		*(kt++)= ((r2<<9) | (r1>>7))&0xffff;
        ^
84.   		r0= kf[3];
85.   		*(kt++)= ((r1<<9) | (r0>>7))&0xffff;

void idea_set_encrypt_key(unsigned char *key, IDEA_KEY_SCHEDULE *ks)
	{
	int i;
	register IDEA_INT *kt,*kf,r0,r1,r2;
	kt= &(ks->data[0][0]);
	n2s(key,kt[0]); n2s(key,kt[1]); n2s(key,kt[2]); n2s(key,kt[3]);
	n2s(key,kt[4]); n2s(key,kt[5]); n2s(key,kt[6]); n2s(key,kt[7]);
	kf=kt;
	kt+=8;
	for (i=0; i<6; i++)
		{
		r2= kf[1];
		r1= kf[2];
		*(kt++)= ((r2<<9) | (r1>>7))&0xffff;
		r0= kf[3];
		*(kt++)= ((r1<<9) | (r0>>7))&0xffff;
		r1= kf[4];
		*(kt++)= ((r0<<9) | (r1>>7))&0xffff;
		r0= kf[5];
		*(kt++)= ((r1<<9) | (r0>>7))&0xffff;
		r1= kf[6];
		*(kt++)= ((r0<<9) | (r1>>7))&0xffff;
		r0= kf[7];
		*(kt++)= ((r1<<9) | (r0>>7))&0xffff;
		r1= kf[0];
		if (i >= 5) break;
		*(kt++)= ((r0<<9) | (r1>>7))&0xffff;
		*(kt++)= ((r1<<9) | (r2>>7))&0xffff;
		kf+=8;
		}
	}
['void idea_set_encrypt_key(unsigned char *key, IDEA_KEY_SCHEDULE *ks)\n\t{\n\tint i;\n\tregister IDEA_INT *kt,*kf,r0,r1,r2;\n\tkt= &(ks->data[0][0]);\n\tn2s(key,kt[0]); n2s(key,kt[1]); n2s(key,kt[2]); n2s(key,kt[3]);\n\tn2s(key,kt[4]); n2s(key,kt[5]); n2s(key,kt[6]); n2s(key,kt[7]);\n\tkf=kt;\n\tkt+=8;\n\tfor (i=0; i<6; i++)\n\t\t{\n\t\tr2= kf[1];\n\t\tr1= kf[2];\n\t\t*(kt++)= ((r2<<9) | (r1>>7))&0xffff;\n\t\tr0= kf[3];\n\t\t*(kt++)= ((r1<<9) | (r0>>7))&0xffff;\n\t\tr1= kf[4];\n\t\t*(kt++)= ((r0<<9) | (r1>>7))&0xffff;\n\t\tr0= kf[5];\n\t\t*(kt++)= ((r1<<9) | (r0>>7))&0xffff;\n\t\tr1= kf[6];\n\t\t*(kt++)= ((r0<<9) | (r1>>7))&0xffff;\n\t\tr0= kf[7];\n\t\t*(kt++)= ((r1<<9) | (r0>>7))&0xffff;\n\t\tr1= kf[0];\n\t\tif (i >= 5) break;\n\t\t*(kt++)= ((r0<<9) | (r1>>7))&0xffff;\n\t\t*(kt++)= ((r1<<9) | (r2>>7))&0xffff;\n\t\tkf+=8;\n\t\t}\n\t}']