Overview
Comment: | messagePackValue -> objectByParsingMessagePack |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
6cfa8f5c7e81c1047c49fa0d13289ef9 |
User & Date: | js on 2020-08-13 21:12:03 |
Other Links: | manifest | tags |
Context
2020-08-13
| ||
22:29 | OFData: ASN1DERValue -> objectByParsingASN1DER check-in: e479cef7b3 user: js tags: trunk | |
21:12 | messagePackValue -> objectByParsingMessagePack check-in: 6cfa8f5c7e user: js tags: trunk | |
21:07 | OFString: Rename JSONValue to objectByParsingJSON check-in: 8611f48f42 user: js tags: trunk | |
Changes
Modified src/Makefile from [f2c0d6b35c] to [563644dd94].
︙ | ︙ | |||
27 28 29 30 31 32 33 | OFCharacterSet.m \ OFColor.m \ OFConstantString.m \ OFCountedSet.m \ OFData.m \ OFData+ASN1DERValue.m \ OFData+CryptoHashing.m \ | | | 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | OFCharacterSet.m \ OFColor.m \ OFConstantString.m \ OFCountedSet.m \ OFData.m \ OFData+ASN1DERValue.m \ OFData+CryptoHashing.m \ OFData+MessagePackParsing.m \ OFDate.m \ OFDictionary.m \ OFEnumerator.m \ OFFileManager.m \ OFGZIPStream.m \ OFHMAC.m \ OFInflate64Stream.m \ |
︙ | ︙ |
Renamed and modified src/OFData+MessagePackValue.h [2409c49524] to src/OFData+MessagePackParsing.h [6f2988f9a2].
︙ | ︙ | |||
18 19 20 21 22 23 24 | #import "OFData.h" OF_ASSUME_NONNULL_BEGIN #ifdef __cplusplus extern "C" { #endif | | | | | | 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | #import "OFData.h" OF_ASSUME_NONNULL_BEGIN #ifdef __cplusplus extern "C" { #endif extern int _OFData_MessagePackParsing_reference; #ifdef __cplusplus } #endif @interface OFData (MessagePackParsing) /*! * @brief The data interpreted as MessagePack representation and parsed as an * object. */ @property (readonly, nonatomic) id objectByParsingMessagePack; /*! * @brief Parses the MessagePack representation and returns it as an object. * * @param depthLimit The maximum depth the parser should accept (defaults to 32 * if not specified, 0 means no limit (insecure!)) * @return The MessagePack representation as an object */ - (id)objectByParsingMessagePackWithDepthLimit: (size_t)depthLimit; @end OF_ASSUME_NONNULL_END |
Renamed and modified src/OFData+MessagePackValue.m [caaaf51219] to src/OFData+MessagePackParsing.m [91d033cd37].
︙ | ︙ | |||
15 16 17 18 19 20 21 | * file. */ #include "config.h" #include <string.h> | | | | 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | * file. */ #include "config.h" #include <string.h> #import "OFData+MessagePackParsing.h" #import "OFArray.h" #import "OFDate.h" #import "OFDictionary.h" #import "OFMessagePackExtension.h" #import "OFNull.h" #import "OFNumber.h" #import "OFString.h" #import "OFInvalidArgumentException.h" #import "OFInvalidFormatException.h" #import "OFOutOfRangeException.h" #import "OFTruncatedDataException.h" int _OFData_MessagePackParsing_reference; static size_t parseObject(const unsigned char *buffer, size_t length, id *object, size_t depthLimit); static uint16_t readUInt16(const unsigned char *buffer) { |
︙ | ︙ | |||
538 539 540 541 542 543 544 | return parseTable(buffer + 5, length - 5, object, readUInt32(buffer + 1), depthLimit) + 5; default: @throw [OFInvalidFormatException exception]; } } | | | | | | 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 | return parseTable(buffer + 5, length - 5, object, readUInt32(buffer + 1), depthLimit) + 5; default: @throw [OFInvalidFormatException exception]; } } @implementation OFData (MessagePackParsing) - (id)objectByParsingMessagePack { return [self objectByParsingMessagePackWithDepthLimit: 32]; } - (id)objectByParsingMessagePackWithDepthLimit: (size_t)depthLimit { void *pool = objc_autoreleasePoolPush(); size_t count = self.count; id object; if (self.itemSize != 1) @throw [OFInvalidArgumentException exception]; |
︙ | ︙ |
Modified src/OFData.h from [28777ad7ed] to [410727d761].
︙ | ︙ | |||
325 326 327 328 329 330 331 | @end OF_ASSUME_NONNULL_END #import "OFMutableData.h" #import "OFData+ASN1DERValue.h" #import "OFData+CryptoHashing.h" | | | 325 326 327 328 329 330 331 332 | @end OF_ASSUME_NONNULL_END #import "OFMutableData.h" #import "OFData+ASN1DERValue.h" #import "OFData+CryptoHashing.h" #import "OFData+MessagePackParsing.h" |
Modified src/OFData.m from [1f025529e1] to [40564fad69].
︙ | ︙ | |||
46 47 48 49 50 51 52 | /* References for static linking */ void _references_to_categories_of_OFData(void) { _OFData_ASN1DERValue_reference = 1; _OFData_CryptoHashing_reference = 1; | | | 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | /* References for static linking */ void _references_to_categories_of_OFData(void) { _OFData_ASN1DERValue_reference = 1; _OFData_CryptoHashing_reference = 1; _OFData_MessagePackParsing_reference = 1; } @implementation OFData @synthesize itemSize = _itemSize; + (instancetype)dataWithItems: (const void *)items count: (size_t)count |
︙ | ︙ |