Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/openssh/src/openbsd-compat/chacha_private.h |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||
---|---|---|---|---|---|---|---|---|
1 | typedef unsigned char u8; | - | ||||||
2 | typedef unsigned int u32; | - | ||||||
3 | - | |||||||
4 | typedef struct | - | ||||||
5 | { | - | ||||||
6 | u32 input[16]; | - | ||||||
7 | } chacha_ctx; | - | ||||||
8 | static const char sigma[16] = "expand 32-byte k"; | - | ||||||
9 | static const char tau[16] = "expand 16-byte k"; | - | ||||||
10 | - | |||||||
11 | static void | - | ||||||
12 | chacha_keysetup(chacha_ctx *x,const u8 *k,u32 kbits,u32 ivbits) | - | ||||||
13 | { | - | ||||||
14 | const char *constants; | - | ||||||
15 | - | |||||||
16 | x->input[4] = (((u32)((k + 0)[0]) ) | ((u32)((k + 0)[1]) << 8) | ((u32)((k + 0)[2]) << 16) | ((u32)((k + 0)[3]) << 24)); | - | ||||||
17 | x->input[5] = (((u32)((k + 4)[0]) ) | ((u32)((k + 4)[1]) << 8) | ((u32)((k + 4)[2]) << 16) | ((u32)((k + 4)[3]) << 24)); | - | ||||||
18 | x->input[6] = (((u32)((k + 8)[0]) ) | ((u32)((k + 8)[1]) << 8) | ((u32)((k + 8)[2]) << 16) | ((u32)((k + 8)[3]) << 24)); | - | ||||||
19 | x->input[7] = (((u32)((k + 12)[0]) ) | ((u32)((k + 12)[1]) << 8) | ((u32)((k + 12)[2]) << 16) | ((u32)((k + 12)[3]) << 24)); | - | ||||||
20 | if (kbits == 256
| 0-3033 | ||||||
21 | k += 16; | - | ||||||
22 | constants = sigma; | - | ||||||
23 | } executed 3033 times by 4 tests: else {end of block Executed by:
| 3033 | ||||||
24 | constants = tau; | - | ||||||
25 | } never executed: end of block | 0 | ||||||
26 | x->input[8] = (((u32)((k + 0)[0]) ) | ((u32)((k + 0)[1]) << 8) | ((u32)((k + 0)[2]) << 16) | ((u32)((k + 0)[3]) << 24)); | - | ||||||
27 | x->input[9] = (((u32)((k + 4)[0]) ) | ((u32)((k + 4)[1]) << 8) | ((u32)((k + 4)[2]) << 16) | ((u32)((k + 4)[3]) << 24)); | - | ||||||
28 | x->input[10] = (((u32)((k + 8)[0]) ) | ((u32)((k + 8)[1]) << 8) | ((u32)((k + 8)[2]) << 16) | ((u32)((k + 8)[3]) << 24)); | - | ||||||
29 | x->input[11] = (((u32)((k + 12)[0]) ) | ((u32)((k + 12)[1]) << 8) | ((u32)((k + 12)[2]) << 16) | ((u32)((k + 12)[3]) << 24)); | - | ||||||
30 | x->input[0] = (((u32)((constants + 0)[0]) ) | ((u32)((constants + 0)[1]) << 8) | ((u32)((constants + 0)[2]) << 16) | ((u32)((constants + 0)[3]) << 24)); | - | ||||||
31 | x->input[1] = (((u32)((constants + 4)[0]) ) | ((u32)((constants + 4)[1]) << 8) | ((u32)((constants + 4)[2]) << 16) | ((u32)((constants + 4)[3]) << 24)); | - | ||||||
32 | x->input[2] = (((u32)((constants + 8)[0]) ) | ((u32)((constants + 8)[1]) << 8) | ((u32)((constants + 8)[2]) << 16) | ((u32)((constants + 8)[3]) << 24)); | - | ||||||
33 | x->input[3] = (((u32)((constants + 12)[0]) ) | ((u32)((constants + 12)[1]) << 8) | ((u32)((constants + 12)[2]) << 16) | ((u32)((constants + 12)[3]) << 24)); | - | ||||||
34 | } executed 3033 times by 4 tests: end of block Executed by:
| 3033 | ||||||
35 | - | |||||||
36 | static void | - | ||||||
37 | chacha_ivsetup(chacha_ctx *x,const u8 *iv) | - | ||||||
38 | { | - | ||||||
39 | x->input[12] = 0; | - | ||||||
40 | x->input[13] = 0; | - | ||||||
41 | x->input[14] = (((u32)((iv + 0)[0]) ) | ((u32)((iv + 0)[1]) << 8) | ((u32)((iv + 0)[2]) << 16) | ((u32)((iv + 0)[3]) << 24)); | - | ||||||
42 | x->input[15] = (((u32)((iv + 4)[0]) ) | ((u32)((iv + 4)[1]) << 8) | ((u32)((iv + 4)[2]) << 16) | ((u32)((iv + 4)[3]) << 24)); | - | ||||||
43 | } executed 3033 times by 4 tests: end of block Executed by:
| 3033 | ||||||
44 | - | |||||||
45 | static void | - | ||||||
46 | chacha_encrypt_bytes(chacha_ctx *x,const u8 *m,u8 *c,u32 bytes) | - | ||||||
47 | { | - | ||||||
48 | u32 x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15; | - | ||||||
49 | u32 j0, j1, j2, j3, j4, j5, j6, j7, j8, j9, j10, j11, j12, j13, j14, j15; | - | ||||||
50 | u8 *ctarget = | - | ||||||
51 | ((void *)0) | - | ||||||
52 | ; | - | ||||||
53 | u8 tmp[64]; | - | ||||||
54 | u_int i; | - | ||||||
55 | - | |||||||
56 | if (!bytes
never executed: return; | 0-3023 | ||||||
57 | - | |||||||
58 | j0 = x->input[0]; | - | ||||||
59 | j1 = x->input[1]; | - | ||||||
60 | j2 = x->input[2]; | - | ||||||
61 | j3 = x->input[3]; | - | ||||||
62 | j4 = x->input[4]; | - | ||||||
63 | j5 = x->input[5]; | - | ||||||
64 | j6 = x->input[6]; | - | ||||||
65 | j7 = x->input[7]; | - | ||||||
66 | j8 = x->input[8]; | - | ||||||
67 | j9 = x->input[9]; | - | ||||||
68 | j10 = x->input[10]; | - | ||||||
69 | j11 = x->input[11]; | - | ||||||
70 | j12 = x->input[12]; | - | ||||||
71 | j13 = x->input[13]; | - | ||||||
72 | j14 = x->input[14]; | - | ||||||
73 | j15 = x->input[15]; | - | ||||||
74 | - | |||||||
75 | for (;;) { | - | ||||||
76 | if (bytes < 64
| 0-48368 | ||||||
77 | for (i = 0;i < bytes
never executed: tmp[i] = m[i]; | 0 | ||||||
78 | m = tmp; | - | ||||||
79 | ctarget = c; | - | ||||||
80 | c = tmp; | - | ||||||
81 | } never executed: end of block | 0 | ||||||
82 | x0 = j0; | - | ||||||
83 | x1 = j1; | - | ||||||
84 | x2 = j2; | - | ||||||
85 | x3 = j3; | - | ||||||
86 | x4 = j4; | - | ||||||
87 | x5 = j5; | - | ||||||
88 | x6 = j6; | - | ||||||
89 | x7 = j7; | - | ||||||
90 | x8 = j8; | - | ||||||
91 | x9 = j9; | - | ||||||
92 | x10 = j10; | - | ||||||
93 | x11 = j11; | - | ||||||
94 | x12 = j12; | - | ||||||
95 | x13 = j13; | - | ||||||
96 | x14 = j14; | - | ||||||
97 | x15 = j15; | - | ||||||
98 | for (i = 20;i > 0
| 48368-483680 | ||||||
99 | x0 = (((u32)((x0) + (x4)) & (0xFFFFFFFFU))); x12 = ((((u32)((((x12) ^ (x0))) << (16)) & (0xFFFFFFFFU)) | ((((x12) ^ (x0))) >> (32 - (16))))); x8 = (((u32)((x8) + (x12)) & (0xFFFFFFFFU))); x4 = ((((u32)((((x4) ^ (x8))) << (12)) & (0xFFFFFFFFU)) | ((((x4) ^ (x8))) >> (32 - (12))))); x0 = (((u32)((x0) + (x4)) & (0xFFFFFFFFU))); x12 = ((((u32)((((x12) ^ (x0))) << (8)) & (0xFFFFFFFFU)) | ((((x12) ^ (x0))) >> (32 - (8))))); x8 = (((u32)((x8) + (x12)) & (0xFFFFFFFFU))); x4 = ((((u32)((((x4) ^ (x8))) << (7)) & (0xFFFFFFFFU)) | ((((x4) ^ (x8))) >> (32 - (7))))); | - | ||||||
100 | x1 = (((u32)((x1) + (x5)) & (0xFFFFFFFFU))); x13 = ((((u32)((((x13) ^ (x1))) << (16)) & (0xFFFFFFFFU)) | ((((x13) ^ (x1))) >> (32 - (16))))); x9 = (((u32)((x9) + (x13)) & (0xFFFFFFFFU))); x5 = ((((u32)((((x5) ^ (x9))) << (12)) & (0xFFFFFFFFU)) | ((((x5) ^ (x9))) >> (32 - (12))))); x1 = (((u32)((x1) + (x5)) & (0xFFFFFFFFU))); x13 = ((((u32)((((x13) ^ (x1))) << (8)) & (0xFFFFFFFFU)) | ((((x13) ^ (x1))) >> (32 - (8))))); x9 = (((u32)((x9) + (x13)) & (0xFFFFFFFFU))); x5 = ((((u32)((((x5) ^ (x9))) << (7)) & (0xFFFFFFFFU)) | ((((x5) ^ (x9))) >> (32 - (7))))); | - | ||||||
101 | x2 = (((u32)((x2) + (x6)) & (0xFFFFFFFFU))); x14 = ((((u32)((((x14) ^ (x2))) << (16)) & (0xFFFFFFFFU)) | ((((x14) ^ (x2))) >> (32 - (16))))); x10 = (((u32)((x10) + (x14)) & (0xFFFFFFFFU))); x6 = ((((u32)((((x6) ^ (x10))) << (12)) & (0xFFFFFFFFU)) | ((((x6) ^ (x10))) >> (32 - (12))))); x2 = (((u32)((x2) + (x6)) & (0xFFFFFFFFU))); x14 = ((((u32)((((x14) ^ (x2))) << (8)) & (0xFFFFFFFFU)) | ((((x14) ^ (x2))) >> (32 - (8))))); x10 = (((u32)((x10) + (x14)) & (0xFFFFFFFFU))); x6 = ((((u32)((((x6) ^ (x10))) << (7)) & (0xFFFFFFFFU)) | ((((x6) ^ (x10))) >> (32 - (7))))); | - | ||||||
102 | x3 = (((u32)((x3) + (x7)) & (0xFFFFFFFFU))); x15 = ((((u32)((((x15) ^ (x3))) << (16)) & (0xFFFFFFFFU)) | ((((x15) ^ (x3))) >> (32 - (16))))); x11 = (((u32)((x11) + (x15)) & (0xFFFFFFFFU))); x7 = ((((u32)((((x7) ^ (x11))) << (12)) & (0xFFFFFFFFU)) | ((((x7) ^ (x11))) >> (32 - (12))))); x3 = (((u32)((x3) + (x7)) & (0xFFFFFFFFU))); x15 = ((((u32)((((x15) ^ (x3))) << (8)) & (0xFFFFFFFFU)) | ((((x15) ^ (x3))) >> (32 - (8))))); x11 = (((u32)((x11) + (x15)) & (0xFFFFFFFFU))); x7 = ((((u32)((((x7) ^ (x11))) << (7)) & (0xFFFFFFFFU)) | ((((x7) ^ (x11))) >> (32 - (7))))); | - | ||||||
103 | x0 = (((u32)((x0) + (x5)) & (0xFFFFFFFFU))); x15 = ((((u32)((((x15) ^ (x0))) << (16)) & (0xFFFFFFFFU)) | ((((x15) ^ (x0))) >> (32 - (16))))); x10 = (((u32)((x10) + (x15)) & (0xFFFFFFFFU))); x5 = ((((u32)((((x5) ^ (x10))) << (12)) & (0xFFFFFFFFU)) | ((((x5) ^ (x10))) >> (32 - (12))))); x0 = (((u32)((x0) + (x5)) & (0xFFFFFFFFU))); x15 = ((((u32)((((x15) ^ (x0))) << (8)) & (0xFFFFFFFFU)) | ((((x15) ^ (x0))) >> (32 - (8))))); x10 = (((u32)((x10) + (x15)) & (0xFFFFFFFFU))); x5 = ((((u32)((((x5) ^ (x10))) << (7)) & (0xFFFFFFFFU)) | ((((x5) ^ (x10))) >> (32 - (7))))); | - | ||||||
104 | x1 = (((u32)((x1) + (x6)) & (0xFFFFFFFFU))); x12 = ((((u32)((((x12) ^ (x1))) << (16)) & (0xFFFFFFFFU)) | ((((x12) ^ (x1))) >> (32 - (16))))); x11 = (((u32)((x11) + (x12)) & (0xFFFFFFFFU))); x6 = ((((u32)((((x6) ^ (x11))) << (12)) & (0xFFFFFFFFU)) | ((((x6) ^ (x11))) >> (32 - (12))))); x1 = (((u32)((x1) + (x6)) & (0xFFFFFFFFU))); x12 = ((((u32)((((x12) ^ (x1))) << (8)) & (0xFFFFFFFFU)) | ((((x12) ^ (x1))) >> (32 - (8))))); x11 = (((u32)((x11) + (x12)) & (0xFFFFFFFFU))); x6 = ((((u32)((((x6) ^ (x11))) << (7)) & (0xFFFFFFFFU)) | ((((x6) ^ (x11))) >> (32 - (7))))); | - | ||||||
105 | x2 = (((u32)((x2) + (x7)) & (0xFFFFFFFFU))); x13 = ((((u32)((((x13) ^ (x2))) << (16)) & (0xFFFFFFFFU)) | ((((x13) ^ (x2))) >> (32 - (16))))); x8 = (((u32)((x8) + (x13)) & (0xFFFFFFFFU))); x7 = ((((u32)((((x7) ^ (x8))) << (12)) & (0xFFFFFFFFU)) | ((((x7) ^ (x8))) >> (32 - (12))))); x2 = (((u32)((x2) + (x7)) & (0xFFFFFFFFU))); x13 = ((((u32)((((x13) ^ (x2))) << (8)) & (0xFFFFFFFFU)) | ((((x13) ^ (x2))) >> (32 - (8))))); x8 = (((u32)((x8) + (x13)) & (0xFFFFFFFFU))); x7 = ((((u32)((((x7) ^ (x8))) << (7)) & (0xFFFFFFFFU)) | ((((x7) ^ (x8))) >> (32 - (7))))); | - | ||||||
106 | x3 = (((u32)((x3) + (x4)) & (0xFFFFFFFFU))); x14 = ((((u32)((((x14) ^ (x3))) << (16)) & (0xFFFFFFFFU)) | ((((x14) ^ (x3))) >> (32 - (16))))); x9 = (((u32)((x9) + (x14)) & (0xFFFFFFFFU))); x4 = ((((u32)((((x4) ^ (x9))) << (12)) & (0xFFFFFFFFU)) | ((((x4) ^ (x9))) >> (32 - (12))))); x3 = (((u32)((x3) + (x4)) & (0xFFFFFFFFU))); x14 = ((((u32)((((x14) ^ (x3))) << (8)) & (0xFFFFFFFFU)) | ((((x14) ^ (x3))) >> (32 - (8))))); x9 = (((u32)((x9) + (x14)) & (0xFFFFFFFFU))); x4 = ((((u32)((((x4) ^ (x9))) << (7)) & (0xFFFFFFFFU)) | ((((x4) ^ (x9))) >> (32 - (7))))); | - | ||||||
107 | } executed 483680 times by 4 tests: end of block Executed by:
| 483680 | ||||||
108 | x0 = (((u32)((x0) + (j0)) & (0xFFFFFFFFU))); | - | ||||||
109 | x1 = (((u32)((x1) + (j1)) & (0xFFFFFFFFU))); | - | ||||||
110 | x2 = (((u32)((x2) + (j2)) & (0xFFFFFFFFU))); | - | ||||||
111 | x3 = (((u32)((x3) + (j3)) & (0xFFFFFFFFU))); | - | ||||||
112 | x4 = (((u32)((x4) + (j4)) & (0xFFFFFFFFU))); | - | ||||||
113 | x5 = (((u32)((x5) + (j5)) & (0xFFFFFFFFU))); | - | ||||||
114 | x6 = (((u32)((x6) + (j6)) & (0xFFFFFFFFU))); | - | ||||||
115 | x7 = (((u32)((x7) + (j7)) & (0xFFFFFFFFU))); | - | ||||||
116 | x8 = (((u32)((x8) + (j8)) & (0xFFFFFFFFU))); | - | ||||||
117 | x9 = (((u32)((x9) + (j9)) & (0xFFFFFFFFU))); | - | ||||||
118 | x10 = (((u32)((x10) + (j10)) & (0xFFFFFFFFU))); | - | ||||||
119 | x11 = (((u32)((x11) + (j11)) & (0xFFFFFFFFU))); | - | ||||||
120 | x12 = (((u32)((x12) + (j12)) & (0xFFFFFFFFU))); | - | ||||||
121 | x13 = (((u32)((x13) + (j13)) & (0xFFFFFFFFU))); | - | ||||||
122 | x14 = (((u32)((x14) + (j14)) & (0xFFFFFFFFU))); | - | ||||||
123 | x15 = (((u32)((x15) + (j15)) & (0xFFFFFFFFU))); | - | ||||||
124 | j12 = ((((u32)(((j12)) + (1)) & (0xFFFFFFFFU)))); | - | ||||||
125 | if (!j12
| 0-48368 | ||||||
126 | j13 = ((((u32)(((j13)) + (1)) & (0xFFFFFFFFU)))); | - | ||||||
127 | - | |||||||
128 | } never executed: end of block | 0 | ||||||
129 | - | |||||||
130 | do { (c + 0)[0] = ((u8)((x0)) & (0xFFU)); (c + 0)[1] = ((u8)((x0) >> 8) & (0xFFU)); (c + 0)[2] = ((u8)((x0) >> 16) & (0xFFU)); (c + 0)[3] = ((u8)((x0) >> 24) & (0xFFU)); } while (0); | - | ||||||
131 | do { (c + 4)[0] = ((u8)((x1)) & (0xFFU)); (c + 4)[1] = ((u8)((x1) >> 8) & (0xFFU)); (c + 4)[2] = ((u8)((x1) >> 16) & (0xFFU)); (c + 4)[3] = ((u8)((x1) >> 24) & (0xFFU)); } while (0); | - | ||||||
132 | do { (c + 8)[0] = ((u8)((x2)) & (0xFFU)); (c + 8)[1] = ((u8)((x2) >> 8) & (0xFFU)); (c + 8)[2] = ((u8)((x2) >> 16) & (0xFFU)); (c + 8)[3] = ((u8)((x2) >> 24) & (0xFFU)); } while (0); | - | ||||||
133 | do { (c + 12)[0] = ((u8)((x3)) & (0xFFU)); (c + 12)[1] = ((u8)((x3) >> 8) & (0xFFU)); (c + 12)[2] = ((u8)((x3) >> 16) & (0xFFU)); (c + 12)[3] = ((u8)((x3) >> 24) & (0xFFU)); } while (0); | - | ||||||
134 | do { (c + 16)[0] = ((u8)((x4)) & (0xFFU)); (c + 16)[1] = ((u8)((x4) >> 8) & (0xFFU)); (c + 16)[2] = ((u8)((x4) >> 16) & (0xFFU)); (c + 16)[3] = ((u8)((x4) >> 24) & (0xFFU)); } while (0); | - | ||||||
135 | do { (c + 20)[0] = ((u8)((x5)) & (0xFFU)); (c + 20)[1] = ((u8)((x5) >> 8) & (0xFFU)); (c + 20)[2] = ((u8)((x5) >> 16) & (0xFFU)); (c + 20)[3] = ((u8)((x5) >> 24) & (0xFFU)); } while (0); | - | ||||||
136 | do { (c + 24)[0] = ((u8)((x6)) & (0xFFU)); (c + 24)[1] = ((u8)((x6) >> 8) & (0xFFU)); (c + 24)[2] = ((u8)((x6) >> 16) & (0xFFU)); (c + 24)[3] = ((u8)((x6) >> 24) & (0xFFU)); } while (0); | - | ||||||
137 | do { (c + 28)[0] = ((u8)((x7)) & (0xFFU)); (c + 28)[1] = ((u8)((x7) >> 8) & (0xFFU)); (c + 28)[2] = ((u8)((x7) >> 16) & (0xFFU)); (c + 28)[3] = ((u8)((x7) >> 24) & (0xFFU)); } while (0); | - | ||||||
138 | do { (c + 32)[0] = ((u8)((x8)) & (0xFFU)); (c + 32)[1] = ((u8)((x8) >> 8) & (0xFFU)); (c + 32)[2] = ((u8)((x8) >> 16) & (0xFFU)); (c + 32)[3] = ((u8)((x8) >> 24) & (0xFFU)); } while (0); | - | ||||||
139 | do { (c + 36)[0] = ((u8)((x9)) & (0xFFU)); (c + 36)[1] = ((u8)((x9) >> 8) & (0xFFU)); (c + 36)[2] = ((u8)((x9) >> 16) & (0xFFU)); (c + 36)[3] = ((u8)((x9) >> 24) & (0xFFU)); } while (0); | - | ||||||
140 | do { (c + 40)[0] = ((u8)((x10)) & (0xFFU)); (c + 40)[1] = ((u8)((x10) >> 8) & (0xFFU)); (c + 40)[2] = ((u8)((x10) >> 16) & (0xFFU)); (c + 40)[3] = ((u8)((x10) >> 24) & (0xFFU)); } while (0); | - | ||||||
141 | do { (c + 44)[0] = ((u8)((x11)) & (0xFFU)); (c + 44)[1] = ((u8)((x11) >> 8) & (0xFFU)); (c + 44)[2] = ((u8)((x11) >> 16) & (0xFFU)); (c + 44)[3] = ((u8)((x11) >> 24) & (0xFFU)); } while (0); | - | ||||||
142 | do { (c + 48)[0] = ((u8)((x12)) & (0xFFU)); (c + 48)[1] = ((u8)((x12) >> 8) & (0xFFU)); (c + 48)[2] = ((u8)((x12) >> 16) & (0xFFU)); (c + 48)[3] = ((u8)((x12) >> 24) & (0xFFU)); } while (0); | - | ||||||
143 | do { (c + 52)[0] = ((u8)((x13)) & (0xFFU)); (c + 52)[1] = ((u8)((x13) >> 8) & (0xFFU)); (c + 52)[2] = ((u8)((x13) >> 16) & (0xFFU)); (c + 52)[3] = ((u8)((x13) >> 24) & (0xFFU)); } while (0); | - | ||||||
144 | do { (c + 56)[0] = ((u8)((x14)) & (0xFFU)); (c + 56)[1] = ((u8)((x14) >> 8) & (0xFFU)); (c + 56)[2] = ((u8)((x14) >> 16) & (0xFFU)); (c + 56)[3] = ((u8)((x14) >> 24) & (0xFFU)); } while (0); | - | ||||||
145 | do { (c + 60)[0] = ((u8)((x15)) & (0xFFU)); (c + 60)[1] = ((u8)((x15) >> 8) & (0xFFU)); (c + 60)[2] = ((u8)((x15) >> 16) & (0xFFU)); (c + 60)[3] = ((u8)((x15) >> 24) & (0xFFU)); } while (0); | - | ||||||
146 | - | |||||||
147 | if (bytes <= 64
| 3023-45345 | ||||||
148 | if (bytes < 64
| 0-3023 | ||||||
149 | for (i = 0;i < bytes
never executed: ctarget[i] = c[i]; | 0 | ||||||
150 | } never executed: end of block | 0 | ||||||
151 | x->input[12] = j12; | - | ||||||
152 | x->input[13] = j13; | - | ||||||
153 | return; executed 3023 times by 4 tests: return; Executed by:
| 3023 | ||||||
154 | } | - | ||||||
155 | bytes -= 64; | - | ||||||
156 | c += 64; | - | ||||||
157 | - | |||||||
158 | - | |||||||
159 | - | |||||||
160 | } executed 45345 times by 4 tests: end of block Executed by:
| 45345 | ||||||
161 | } never executed: end of block | 0 | ||||||
Switch to Source code | Preprocessed file |