- Notifications
You must be signed in to change notification settings - Fork28
Commit739259d
committed
Adjust the behavior of the PQExpBuffer code to make it have well-defined
results (ie, an empty "broken" buffer) if memory overrun occurs anywherealong the way to filling the buffer. The previous coding would just silentlydiscard portions of the intended buffer contents, as exhibited in troublereport from Sam Mason. Also, tweak psql's main loop to correctly detectand report such overruns. There's probably much more that should be donein this line, but this is a start.1 parent8a10096 commit739259d
File tree
6 files changed
+124
-27
lines changed- src
- bin/psql
- interfaces/libpq
6 files changed
+124
-27
lines changedLines changed: 9 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
3 | 3 |
| |
4 | 4 |
| |
5 | 5 |
| |
6 |
| - | |
| 6 | + | |
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
| |||
184 | 184 |
| |
185 | 185 |
| |
186 | 186 |
| |
187 |
| - | |
| 187 | + | |
| 188 | + | |
188 | 189 |
| |
189 | 190 |
| |
190 | 191 |
| |
191 | 192 |
| |
192 | 193 |
| |
193 | 194 |
| |
194 | 195 |
| |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
195 | 202 |
| |
196 | 203 |
| |
197 | 204 |
| |
|
Lines changed: 28 additions & 9 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
3 | 3 |
| |
4 | 4 |
| |
5 | 5 |
| |
6 |
| - | |
| 6 | + | |
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
| |||
26 | 26 |
| |
27 | 27 |
| |
28 | 28 |
| |
29 |
| - | |
30 |
| - | |
31 |
| - | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
32 | 32 |
| |
33 | 33 |
| |
34 | 34 |
| |
| |||
62 | 62 |
| |
63 | 63 |
| |
64 | 64 |
| |
65 |
| - | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
66 | 68 |
| |
67 | 69 |
| |
68 | 70 |
| |
| |||
220 | 222 |
| |
221 | 223 |
| |
222 | 224 |
| |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
223 | 231 |
| |
224 | 232 |
| |
225 | 233 |
| |
| |||
242 | 250 |
| |
243 | 251 |
| |
244 | 252 |
| |
245 |
| - | |
246 |
| - | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
247 | 260 |
| |
| 261 | + | |
248 | 262 |
| |
249 | 263 |
| |
250 | 264 |
| |
| |||
294 | 308 |
| |
295 | 309 |
| |
296 | 310 |
| |
297 |
| - | |
298 |
| - | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
299 | 318 |
| |
300 | 319 |
| |
301 | 320 |
| |
|
Lines changed: 7 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
33 | 33 |
| |
34 | 34 |
| |
35 | 35 |
| |
36 |
| - | |
| 36 | + | |
37 | 37 |
| |
38 | 38 |
| |
39 | 39 |
| |
| |||
1453 | 1453 |
| |
1454 | 1454 |
| |
1455 | 1455 |
| |
| 1456 | + | |
| 1457 | + | |
| 1458 | + | |
| 1459 | + | |
| 1460 | + | |
| 1461 | + | |
1456 | 1462 |
| |
1457 | 1463 |
| |
1458 | 1464 |
| |
|
Lines changed: 5 additions & 5 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
585 | 585 |
| |
586 | 586 |
| |
587 | 587 |
| |
588 |
| - | |
| 588 | + | |
589 | 589 |
| |
590 | 590 |
| |
591 | 591 |
| |
| |||
1970 | 1970 |
| |
1971 | 1971 |
| |
1972 | 1972 |
| |
1973 |
| - | |
1974 |
| - | |
| 1973 | + | |
| 1974 | + | |
1975 | 1975 |
| |
1976 | 1976 |
| |
1977 | 1977 |
| |
| |||
3151 | 3151 |
| |
3152 | 3152 |
| |
3153 | 3153 |
| |
3154 |
| - | |
| 3154 | + | |
3155 | 3155 |
| |
3156 | 3156 |
| |
3157 | 3157 |
| |
|
Lines changed: 57 additions & 8 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
17 | 17 |
| |
18 | 18 |
| |
19 | 19 |
| |
20 |
| - | |
| 20 | + | |
21 | 21 |
| |
22 | 22 |
| |
23 | 23 |
| |
| |||
32 | 32 |
| |
33 | 33 |
| |
34 | 34 |
| |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
35 | 61 |
| |
36 | 62 |
| |
37 | 63 |
| |
| |||
61 | 87 |
| |
62 | 88 |
| |
63 | 89 |
| |
| 90 | + | |
64 | 91 |
| |
65 | 92 |
| |
66 | 93 |
| |
| |||
96 | 123 |
| |
97 | 124 |
| |
98 | 125 |
| |
99 |
| - | |
100 |
| - | |
| 126 | + | |
101 | 127 |
| |
102 |
| - | |
103 |
| - | |
104 | 128 |
| |
| 129 | + | |
105 | 130 |
| |
106 | 131 |
| |
107 | 132 |
| |
108 | 133 |
| |
109 | 134 |
| |
110 | 135 |
| |
111 | 136 |
| |
| 137 | + | |
| 138 | + | |
112 | 139 |
| |
113 | 140 |
| |
114 | 141 |
| |
115 | 142 |
| |
116 | 143 |
| |
117 | 144 |
| |
118 |
| - | |
119 |
| - | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
120 | 148 |
| |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
121 | 155 |
| |
122 | 156 |
| |
123 | 157 |
| |
| |||
126 | 160 |
| |
127 | 161 |
| |
128 | 162 |
| |
129 |
| - | |
| 163 | + | |
| 164 | + | |
130 | 165 |
| |
131 | 166 |
| |
132 | 167 |
| |
133 | 168 |
| |
134 | 169 |
| |
135 | 170 |
| |
136 | 171 |
| |
| 172 | + | |
| 173 | + | |
| 174 | + | |
137 | 175 |
| |
138 | 176 |
| |
139 | 177 |
| |
140 | 178 |
| |
141 | 179 |
| |
142 | 180 |
| |
| 181 | + | |
| 182 | + | |
143 | 183 |
| |
| 184 | + | |
144 | 185 |
| |
145 | 186 |
| |
146 | 187 |
| |
| |||
173 | 214 |
| |
174 | 215 |
| |
175 | 216 |
| |
| 217 | + | |
| 218 | + | |
176 | 219 |
| |
177 | 220 |
| |
178 | 221 |
| |
| |||
192 | 235 |
| |
193 | 236 |
| |
194 | 237 |
| |
| 238 | + | |
| 239 | + | |
| 240 | + | |
195 | 241 |
| |
196 | 242 |
| |
197 | 243 |
| |
| |||
240 | 286 |
| |
241 | 287 |
| |
242 | 288 |
| |
| 289 | + | |
| 290 | + | |
| 291 | + | |
243 | 292 |
| |
244 | 293 |
| |
245 | 294 |
| |
|
Lines changed: 18 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
18 | 18 |
| |
19 | 19 |
| |
20 | 20 |
| |
21 |
| - | |
| 21 | + | |
22 | 22 |
| |
23 | 23 |
| |
24 | 24 |
| |
| |||
35 | 35 |
| |
36 | 36 |
| |
37 | 37 |
| |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
38 | 42 |
| |
39 | 43 |
| |
40 | 44 |
| |
| |||
46 | 50 |
| |
47 | 51 |
| |
48 | 52 |
| |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
49 | 62 |
| |
50 | 63 |
| |
51 | 64 |
| |
| |||
103 | 116 |
| |
104 | 117 |
| |
105 | 118 |
| |
| 119 | + | |
| 120 | + | |
106 | 121 |
| |
107 | 122 |
| |
108 | 123 |
| |
| |||
111 | 126 |
| |
112 | 127 |
| |
113 | 128 |
| |
114 |
| - | |
| 129 | + | |
| 130 | + | |
115 | 131 |
| |
116 | 132 |
| |
117 | 133 |
| |
|
0 commit comments
Comments
(0)