cbor-extract 2.2.0 → 2.2.1
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/package.json +14 -14
- package/src/extract.cpp +8 -1
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cbor-extract",
|
|
3
3
|
"author": "Kris Zyp",
|
|
4
|
-
"version": "2.2.
|
|
4
|
+
"version": "2.2.1",
|
|
5
5
|
"description": "Node addon for string extraction for cbor-x",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": {
|
|
@@ -12,12 +12,12 @@
|
|
|
12
12
|
"install": "node-gyp-build-optional-packages",
|
|
13
13
|
"recompile": "node-gyp rebuild",
|
|
14
14
|
"before-publish": "prebuildify-ci download && node set-optional-deps.cjs",
|
|
15
|
-
"prebuild": "prebuildify-platform-packages --target
|
|
16
|
-
"prebuild-win32": "
|
|
17
|
-
"prebuild-macos": "prebuildify-platform-packages --target
|
|
18
|
-
"prebuild-libc": "prebuildify-platform-packages --tag-libc --target
|
|
19
|
-
"prebuild-libc-alpine": "prebuildify-cross --image alpine --tag-libc --target 20.
|
|
20
|
-
"publish-all": "cd prebuilds/
|
|
15
|
+
"prebuild": "prebuildify-platform-packages --target 24.14.0",
|
|
16
|
+
"prebuild-win32": "set ENABLE_V8_FUNCTIONS=false&& prebuildify-platform-packages --platform-packages --napi --target 20.20.0",
|
|
17
|
+
"prebuild-macos": "prebuildify-platform-packages --target 24.14.0 && ENABLE_V8_FUNCTIONS=false prebuildify-platform-packages --napi --platform-packages --target 20.20.0",
|
|
18
|
+
"prebuild-libc": "prebuildify-platform-packages --tag-libc --target 24.14.0 && ENABLE_V8_FUNCTIONS=false prebuildify-platform-packages --platform-packages --napi --tag-libc --target 20.20.0",
|
|
19
|
+
"prebuild-libc-alpine": "ENABLE_V8_FUNCTIONS=false prebuildify-cross --image alpine --tag-libc --napi --target 20.20.0",
|
|
20
|
+
"publish-all": "cd prebuilds/darwin-x64 && npm publish --access public && cd ../darwin-arm64 && npm publish --access public && cd ../linux-x64 && npm publish --access public && cd ../linux-arm64 && npm publish --access public && cd ../linux-arm && npm publish --access public && cd ../.. && npm publish --access public",
|
|
21
21
|
"test": "node ./index.js"
|
|
22
22
|
},
|
|
23
23
|
"main": "./index.js",
|
|
@@ -35,16 +35,16 @@
|
|
|
35
35
|
"download-cbor-prebuilds": "./bin/download-prebuilds.js"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"prebuildify-platform-packages": "5.0.
|
|
38
|
+
"prebuildify-platform-packages": "5.0.5",
|
|
39
39
|
"prebuildify-ci": "^1.0.5",
|
|
40
40
|
"prebuildify-cross": "5.0.0"
|
|
41
41
|
},
|
|
42
42
|
"optionalDependencies": {
|
|
43
|
-
"@cbor-extract/cbor-extract-darwin-arm64": "2.2.
|
|
44
|
-
"@cbor-extract/cbor-extract-darwin-x64": "2.2.
|
|
45
|
-
"@cbor-extract/cbor-extract-linux-arm": "2.2.
|
|
46
|
-
"@cbor-extract/cbor-extract-linux-arm64": "2.2.
|
|
47
|
-
"@cbor-extract/cbor-extract-linux-x64": "2.2.
|
|
48
|
-
"@cbor-extract/cbor-extract-win32-x64": "2.2.
|
|
43
|
+
"@cbor-extract/cbor-extract-darwin-arm64": "2.2.1",
|
|
44
|
+
"@cbor-extract/cbor-extract-darwin-x64": "2.2.1",
|
|
45
|
+
"@cbor-extract/cbor-extract-linux-arm": "2.2.1",
|
|
46
|
+
"@cbor-extract/cbor-extract-linux-arm64": "2.2.1",
|
|
47
|
+
"@cbor-extract/cbor-extract-linux-x64": "2.2.1",
|
|
48
|
+
"@cbor-extract/cbor-extract-win32-x64": "2.2.1"
|
|
49
49
|
}
|
|
50
50
|
}
|
package/src/extract.cpp
CHANGED
|
@@ -84,6 +84,9 @@ public:
|
|
|
84
84
|
lastStringEnd = 0;
|
|
85
85
|
position = startingPosition;
|
|
86
86
|
source = inputSource;
|
|
87
|
+
if (startingPosition + firstStringSize > size) {
|
|
88
|
+
return unexpectedEnd(env);
|
|
89
|
+
}
|
|
87
90
|
readString(env, firstStringSize, firstStringSize < 0x100);
|
|
88
91
|
while (position < size) {
|
|
89
92
|
uint8_t token = source[position++];
|
|
@@ -186,7 +189,11 @@ napi_value extractStrings(napi_env env, napi_callback_info info) {
|
|
|
186
189
|
napi_get_value_uint32(env, args[2], &firstStringSize);
|
|
187
190
|
uint8_t* source;
|
|
188
191
|
size_t buffer_size;
|
|
189
|
-
napi_get_buffer_info(env, args[3], (void**) &source, &buffer_size);
|
|
192
|
+
napi_status status = napi_get_buffer_info(env, args[3], (void**) &source, &buffer_size);
|
|
193
|
+
if (status) {
|
|
194
|
+
napi_throw_type_error(env, NULL, "Unexpected buffer type, expected a Buffer");
|
|
195
|
+
return args[0];
|
|
196
|
+
}
|
|
190
197
|
return extractor->extractStrings(env, position, size, firstStringSize, source);
|
|
191
198
|
}
|
|
192
199
|
#define EXPORT_NAPI_FUNCTION(name, func) { napi_property_descriptor desc = { name, 0, func, 0, 0, 0, (napi_property_attributes) (napi_writable | napi_configurable), 0 }; napi_define_properties(env, exports, 1, &desc); }
|