@litert/televoke 0.4.6 → 0.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGES.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changes Logs
2
2
 
3
+ ## v0.4.7
4
+
5
+ - fix(server): refuse malformed request body.
6
+
3
7
  ## v0.4.6
4
8
 
5
9
  - fix(server): refuse bad requests correctly.
@@ -1 +1 @@
1
- {"version":3,"file":"Http.d.ts","sourceRoot":"","sources":["../../../src/lib/Server/Gateways/Http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,CAAC,MAAM,WAAW,CAAC;AAsL/B,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,QAAQ,CAG1F"}
1
+ {"version":3,"file":"Http.d.ts","sourceRoot":"","sources":["../../../src/lib/Server/Gateways/Http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,CAAC,MAAM,WAAW,CAAC;AA4L/B,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,QAAQ,CAG1F"}
@@ -73,6 +73,10 @@ class HttpGateway {
73
73
  chunk.copy(buf, index);
74
74
  }).on('end', () => {
75
75
  let input;
76
+ if (offset !== length || buf[0] !== 123 || buf[offset - 1] !== 125) {
77
+ refuseBadRequest(resp);
78
+ return;
79
+ }
76
80
  try {
77
81
  input = JSON.parse(buf);
78
82
  input.ip = req.socket.address().address;
@@ -1 +1 @@
1
- {"version":3,"file":"Http.js","sourceRoot":"","sources":["../../../src/lib/Server/Gateways/Http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Http.js","sourceRoot":"","sources":["../../../src/lib/Server/Gateways/Http.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@litert/televoke",
3
- "version": "0.4.6",
3
+ "version": "0.4.7",
4
4
  "description": "A simple RPC service framework.",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -107,6 +107,12 @@ class HttpGateway implements C.IGateway {
107
107
 
108
108
  let input: any;
109
109
 
110
+ if (offset !== length || buf[0] !== 123 || buf[offset - 1] !== 125) {
111
+
112
+ refuseBadRequest(resp);
113
+ return;
114
+ }
115
+
110
116
  try {
111
117
 
112
118
  input = JSON.parse(buf as any);