Commit ea2f2a3
fix(json-rpc): do not leak internal exception messages to clients
When a JSON-RPC method handler throws a non-HTTPError (an unexpected
internal exception), the raw error message was copied into the response
`data` field and returned to the caller, leaking internal details (DB
driver errors, file paths, etc.).
The unhandled branch now omits `data`, so clients receive only
`{ code: -32603, message: "Internal error" }`, consistent with
`HTTPError.toJSON()` masking `data`/`message` for unhandled errors.
Thrown `HTTPError`s still surface their opt-in `data`/`message`.
Co-Authored-By: Claude Fable 5 <[email protected]>1 parent e965604 commit ea2f2a3
3 files changed
Lines changed: 62 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
319 | 319 | | |
320 | 320 | | |
321 | 321 | | |
322 | | - | |
323 | | - | |
324 | | - | |
325 | | - | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
326 | 327 | | |
327 | 328 | | |
328 | 329 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
261 | 261 | | |
262 | 262 | | |
263 | 263 | | |
264 | | - | |
| 264 | + | |
265 | 265 | | |
266 | 266 | | |
267 | 267 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
34 | 45 | | |
35 | 46 | | |
36 | 47 | | |
| |||
256 | 267 | | |
257 | 268 | | |
258 | 269 | | |
259 | | - | |
260 | 270 | | |
261 | 271 | | |
262 | 272 | | |
263 | 273 | | |
264 | 274 | | |
265 | 275 | | |
266 | 276 | | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
267 | 322 | | |
268 | 323 | | |
269 | 324 | | |
| |||
676 | 731 | | |
677 | 732 | | |
678 | 733 | | |
679 | | - | |
680 | 734 | | |
681 | 735 | | |
682 | 736 | | |
| |||
0 commit comments