regenerate protobuf, disable unused messages

This commit is contained in:
Pavol Rusnak 2017-06-22 12:40:39 +02:00
parent c6fd70b471
commit 247cbd2ff1
No known key found for this signature in database
GPG Key ID: 91F3B339B9A02A3D
5 changed files with 41 additions and 182 deletions

View File

@ -50,8 +50,10 @@ void fsm_msgSignMessage(SignMessage *msg);
void fsm_msgVerifyMessage(VerifyMessage *msg);
void fsm_msgSignIdentity(SignIdentity *msg);
void fsm_msgGetECDHSessionKey(GetECDHSessionKey *msg);
/* ECIES disabled
void fsm_msgEncryptMessage(EncryptMessage *msg);
void fsm_msgDecryptMessage(DecryptMessage *msg);
*/
//void fsm_msgPassphraseAck(PassphraseAck *msg);
void fsm_msgEstimateTxSize(EstimateTxSize *msg);
void fsm_msgRecoveryDevice(RecoveryDevice *msg);

View File

@ -65,22 +65,30 @@ VerifyMessage.coin_name max_size:17
MessageSignature.address max_size:41
MessageSignature.signature max_size:65
EncryptMessage.pubkey max_size:33
EncryptMessage.message max_size:1024
EncryptMessage.address_n max_count:8
EncryptMessage.coin_name max_size:17
# deprecated
EncryptMessage skip_message:true
# EncryptMessage.pubkey max_size:33
# EncryptMessage.message max_size:1024
# EncryptMessage.address_n max_count:8
# EncryptMessage.coin_name max_size:17
EncryptedMessage.nonce max_size:33
EncryptedMessage.message max_size:1120
EncryptedMessage.hmac max_size:8
# deprecated
EncryptedMessage skip_message:true
# EncryptedMessage.nonce max_size:33
# EncryptedMessage.message max_size:1120
# EncryptedMessage.hmac max_size:8
DecryptMessage.address_n max_count:8
DecryptMessage.nonce max_size:33
DecryptMessage.message max_size:1120 # 1 + 9 + 1024 + 21 + 65
DecryptMessage.hmac max_size:8
# deprecated
DecryptMessage skip_message:true
# DecryptMessage.address_n max_count:8
# DecryptMessage.nonce max_size:33
# DecryptMessage.message max_size:1120 # 1 + 9 + 1024 + 21 + 65
# DecryptMessage.hmac max_size:8
DecryptedMessage.address max_size:41
DecryptedMessage.message max_size:1024
# deprecated
DecryptedMessage skip_message:true
# DecryptedMessage.address max_size:41
# DecryptedMessage.message max_size:1024
CipherKeyValue.address_n max_count:8
CipherKeyValue.key max_size:256
@ -119,12 +127,16 @@ GetECDHSessionKey.ecdsa_curve_name max_size:32
ECDHSessionKey.session_key max_size:65
# not used in firmware
# deprecated
SimpleSignTx skip_message:true
# not used in firmware, just in bootloader
FirmwareErase skip_message:true
FirmwareRequest skip_message:true
FirmwareUpload skip_message:true
# used in debug firmware
# used only in debug firmware
DebugLinkState.layout max_size:1024
DebugLinkState.pin max_size:10

View File

@ -12,7 +12,6 @@ const char ResetDevice_language_default[17] = "english";
const char RecoveryDevice_language_default[17] = "english";
const char SignMessage_coin_name_default[17] = "Bitcoin";
const char VerifyMessage_coin_name_default[17] = "Bitcoin";
const char EncryptMessage_coin_name_default[17] = "Bitcoin";
const char EstimateTxSize_coin_name_default[17] = "Bitcoin";
const char SignTx_coin_name_default[17] = "Bitcoin";
const uint32_t SignTx_version_default = 1u;
@ -203,7 +202,7 @@ const pb_field_t EntropyAck_fields[2] = {
PB_LAST_FIELD
};
const pb_field_t RecoveryDevice_fields[9] = {
const pb_field_t RecoveryDevice_fields[10] = {
PB_FIELD2( 1, UINT32 , OPTIONAL, STATIC , FIRST, RecoveryDevice, word_count, word_count, 0),
PB_FIELD2( 2, BOOL , OPTIONAL, STATIC , OTHER, RecoveryDevice, passphrase_protection, word_count, 0),
PB_FIELD2( 3, BOOL , OPTIONAL, STATIC , OTHER, RecoveryDevice, pin_protection, passphrase_protection, 0),
@ -212,6 +211,7 @@ const pb_field_t RecoveryDevice_fields[9] = {
PB_FIELD2( 6, BOOL , OPTIONAL, STATIC , OTHER, RecoveryDevice, enforce_wordlist, label, 0),
PB_FIELD2( 8, UINT32 , OPTIONAL, STATIC , OTHER, RecoveryDevice, type, enforce_wordlist, 0),
PB_FIELD2( 9, UINT32 , OPTIONAL, STATIC , OTHER, RecoveryDevice, u2f_counter, type, 0),
PB_FIELD2( 10, BOOL , OPTIONAL, STATIC , OTHER, RecoveryDevice, dry_run, u2f_counter, 0),
PB_LAST_FIELD
};
@ -246,36 +246,6 @@ const pb_field_t MessageSignature_fields[3] = {
PB_LAST_FIELD
};
const pb_field_t EncryptMessage_fields[6] = {
PB_FIELD2( 1, BYTES , OPTIONAL, STATIC , FIRST, EncryptMessage, pubkey, pubkey, 0),
PB_FIELD2( 2, BYTES , OPTIONAL, STATIC , OTHER, EncryptMessage, message, pubkey, 0),
PB_FIELD2( 3, BOOL , OPTIONAL, STATIC , OTHER, EncryptMessage, display_only, message, 0),
PB_FIELD2( 4, UINT32 , REPEATED, STATIC , OTHER, EncryptMessage, address_n, display_only, 0),
PB_FIELD2( 5, STRING , OPTIONAL, STATIC , OTHER, EncryptMessage, coin_name, address_n, &EncryptMessage_coin_name_default),
PB_LAST_FIELD
};
const pb_field_t EncryptedMessage_fields[4] = {
PB_FIELD2( 1, BYTES , OPTIONAL, STATIC , FIRST, EncryptedMessage, nonce, nonce, 0),
PB_FIELD2( 2, BYTES , OPTIONAL, STATIC , OTHER, EncryptedMessage, message, nonce, 0),
PB_FIELD2( 3, BYTES , OPTIONAL, STATIC , OTHER, EncryptedMessage, hmac, message, 0),
PB_LAST_FIELD
};
const pb_field_t DecryptMessage_fields[5] = {
PB_FIELD2( 1, UINT32 , REPEATED, STATIC , FIRST, DecryptMessage, address_n, address_n, 0),
PB_FIELD2( 2, BYTES , OPTIONAL, STATIC , OTHER, DecryptMessage, nonce, address_n, 0),
PB_FIELD2( 3, BYTES , OPTIONAL, STATIC , OTHER, DecryptMessage, message, nonce, 0),
PB_FIELD2( 4, BYTES , OPTIONAL, STATIC , OTHER, DecryptMessage, hmac, message, 0),
PB_LAST_FIELD
};
const pb_field_t DecryptedMessage_fields[3] = {
PB_FIELD2( 1, BYTES , OPTIONAL, STATIC , FIRST, DecryptedMessage, message, message, 0),
PB_FIELD2( 2, STRING , OPTIONAL, STATIC , OTHER, DecryptedMessage, address, message, 0),
PB_LAST_FIELD
};
const pb_field_t CipherKeyValue_fields[8] = {
PB_FIELD2( 1, UINT32 , REPEATED, STATIC , FIRST, CipherKeyValue, address_n, address_n, 0),
PB_FIELD2( 2, STRING , OPTIONAL, STATIC , OTHER, CipherKeyValue, key, address_n, 0),
@ -383,10 +353,6 @@ const pb_field_t SetU2FCounter_fields[2] = {
PB_LAST_FIELD
};
const pb_field_t FirmwareErase_fields[1] = {
PB_LAST_FIELD
};
const pb_field_t DebugLinkDecision_fields[2] = {
PB_FIELD2( 1, BOOL , REQUIRED, STATIC , FIRST, DebugLinkDecision, yes_no, yes_no, 0),
PB_LAST_FIELD
@ -454,11 +420,11 @@ const pb_field_t DebugLinkFlashErase_fields[2] = {
* numbers or field sizes that are larger than what can fit in 8 or 16 bit
* field descriptors.
*/
STATIC_ASSERT((pb_membersize(Features, coins[0]) < 65536 && pb_membersize(PublicKey, node) < 65536 && pb_membersize(GetAddress, multisig) < 65536 && pb_membersize(LoadDevice, node) < 65536 && pb_membersize(TxRequest, details) < 65536 && pb_membersize(TxRequest, serialized) < 65536 && pb_membersize(TxAck, tx) < 65536 && pb_membersize(SignIdentity, identity) < 65536 && pb_membersize(GetECDHSessionKey, identity) < 65536 && pb_membersize(DebugLinkState, node) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_Initialize_GetFeatures_Features_ClearSession_ApplySettings_ChangePin_Ping_Success_Failure_ButtonRequest_ButtonAck_PinMatrixRequest_PinMatrixAck_Cancel_PassphraseRequest_PassphraseAck_GetEntropy_Entropy_GetPublicKey_PublicKey_GetAddress_EthereumGetAddress_Address_EthereumAddress_WipeDevice_LoadDevice_ResetDevice_EntropyRequest_EntropyAck_RecoveryDevice_WordRequest_WordAck_SignMessage_VerifyMessage_MessageSignature_EncryptMessage_EncryptedMessage_DecryptMessage_DecryptedMessage_CipherKeyValue_CipheredKeyValue_EstimateTxSize_TxSize_SignTx_TxRequest_TxAck_EthereumSignTx_EthereumTxRequest_EthereumTxAck_SignIdentity_SignedIdentity_GetECDHSessionKey_ECDHSessionKey_SetU2FCounter_FirmwareErase_DebugLinkDecision_DebugLinkGetState_DebugLinkState_DebugLinkStop_DebugLinkLog_DebugLinkMemoryRead_DebugLinkMemory_DebugLinkMemoryWrite_DebugLinkFlashErase)
STATIC_ASSERT((pb_membersize(Features, coins[0]) < 65536 && pb_membersize(PublicKey, node) < 65536 && pb_membersize(GetAddress, multisig) < 65536 && pb_membersize(LoadDevice, node) < 65536 && pb_membersize(TxRequest, details) < 65536 && pb_membersize(TxRequest, serialized) < 65536 && pb_membersize(TxAck, tx) < 65536 && pb_membersize(SignIdentity, identity) < 65536 && pb_membersize(GetECDHSessionKey, identity) < 65536 && pb_membersize(DebugLinkState, node) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_Initialize_GetFeatures_Features_ClearSession_ApplySettings_ChangePin_Ping_Success_Failure_ButtonRequest_ButtonAck_PinMatrixRequest_PinMatrixAck_Cancel_PassphraseRequest_PassphraseAck_GetEntropy_Entropy_GetPublicKey_PublicKey_GetAddress_EthereumGetAddress_Address_EthereumAddress_WipeDevice_LoadDevice_ResetDevice_EntropyRequest_EntropyAck_RecoveryDevice_WordRequest_WordAck_SignMessage_VerifyMessage_MessageSignature_CipherKeyValue_CipheredKeyValue_EstimateTxSize_TxSize_SignTx_TxRequest_TxAck_EthereumSignTx_EthereumTxRequest_EthereumTxAck_SignIdentity_SignedIdentity_GetECDHSessionKey_ECDHSessionKey_SetU2FCounter_DebugLinkDecision_DebugLinkGetState_DebugLinkState_DebugLinkStop_DebugLinkLog_DebugLinkMemoryRead_DebugLinkMemory_DebugLinkMemoryWrite_DebugLinkFlashErase)
#endif
#if !defined(PB_FIELD_16BIT) && !defined(PB_FIELD_32BIT)
#error Field descriptor for EncryptedMessage.message is too large. Define PB_FIELD_16BIT to fix this.
#error Field descriptor for ApplySettings.homescreen is too large. Define PB_FIELD_16BIT to fix this.
#endif

View File

@ -106,10 +106,6 @@ typedef struct _EntropyRequest {
uint8_t dummy_field;
} EntropyRequest;
typedef struct _FirmwareErase {
uint8_t dummy_field;
} FirmwareErase;
typedef struct _GetFeatures {
uint8_t dummy_field;
} GetFeatures;
@ -277,44 +273,6 @@ typedef struct _DebugLinkState {
uint32_t recovery_word_pos;
} DebugLinkState;
typedef struct {
size_t size;
uint8_t bytes[33];
} DecryptMessage_nonce_t;
typedef struct {
size_t size;
uint8_t bytes[1120];
} DecryptMessage_message_t;
typedef struct {
size_t size;
uint8_t bytes[8];
} DecryptMessage_hmac_t;
typedef struct _DecryptMessage {
size_t address_n_count;
uint32_t address_n[8];
bool has_nonce;
DecryptMessage_nonce_t nonce;
bool has_message;
DecryptMessage_message_t message;
bool has_hmac;
DecryptMessage_hmac_t hmac;
} DecryptMessage;
typedef struct {
size_t size;
uint8_t bytes[1024];
} DecryptedMessage_message_t;
typedef struct _DecryptedMessage {
bool has_message;
DecryptedMessage_message_t message;
bool has_address;
char address[41];
} DecryptedMessage;
typedef struct {
size_t size;
uint8_t bytes[65];
@ -325,53 +283,6 @@ typedef struct _ECDHSessionKey {
ECDHSessionKey_session_key_t session_key;
} ECDHSessionKey;
typedef struct {
size_t size;
uint8_t bytes[33];
} EncryptMessage_pubkey_t;
typedef struct {
size_t size;
uint8_t bytes[1024];
} EncryptMessage_message_t;
typedef struct _EncryptMessage {
bool has_pubkey;
EncryptMessage_pubkey_t pubkey;
bool has_message;
EncryptMessage_message_t message;
bool has_display_only;
bool display_only;
size_t address_n_count;
uint32_t address_n[8];
bool has_coin_name;
char coin_name[17];
} EncryptMessage;
typedef struct {
size_t size;
uint8_t bytes[33];
} EncryptedMessage_nonce_t;
typedef struct {
size_t size;
uint8_t bytes[1120];
} EncryptedMessage_message_t;
typedef struct {
size_t size;
uint8_t bytes[8];
} EncryptedMessage_hmac_t;
typedef struct _EncryptedMessage {
bool has_nonce;
EncryptedMessage_nonce_t nonce;
bool has_message;
EncryptedMessage_message_t message;
bool has_hmac;
EncryptedMessage_hmac_t hmac;
} EncryptedMessage;
typedef struct {
size_t size;
uint8_t bytes[1024];
@ -672,6 +583,8 @@ typedef struct _RecoveryDevice {
uint32_t type;
bool has_u2f_counter;
uint32_t u2f_counter;
bool has_dry_run;
bool dry_run;
} RecoveryDevice;
typedef struct _ResetDevice {
@ -819,7 +732,6 @@ extern const char ResetDevice_language_default[17];
extern const char RecoveryDevice_language_default[17];
extern const char SignMessage_coin_name_default[17];
extern const char VerifyMessage_coin_name_default[17];
extern const char EncryptMessage_coin_name_default[17];
extern const char EstimateTxSize_coin_name_default[17];
extern const char SignTx_coin_name_default[17];
extern const uint32_t SignTx_version_default;
@ -855,16 +767,12 @@ extern const uint32_t SignTx_lock_time_default;
#define ResetDevice_init_default {false, 0, false, 256u, false, 0, false, 0, false, "english", false, "", false, 0}
#define EntropyRequest_init_default {0}
#define EntropyAck_init_default {false, {0, {0}}}
#define RecoveryDevice_init_default {false, 0, false, 0, false, 0, false, "english", false, "", false, 0, false, 0, false, 0}
#define RecoveryDevice_init_default {false, 0, false, 0, false, 0, false, "english", false, "", false, 0, false, 0, false, 0, false, 0}
#define WordRequest_init_default {false, (WordRequestType)0}
#define WordAck_init_default {""}
#define SignMessage_init_default {0, {0, 0, 0, 0, 0, 0, 0, 0}, {0, {0}}, false, "Bitcoin"}
#define VerifyMessage_init_default {false, "", false, {0, {0}}, false, {0, {0}}, false, "Bitcoin"}
#define MessageSignature_init_default {false, "", false, {0, {0}}}
#define EncryptMessage_init_default {false, {0, {0}}, false, {0, {0}}, false, 0, 0, {0, 0, 0, 0, 0, 0, 0, 0}, false, "Bitcoin"}
#define EncryptedMessage_init_default {false, {0, {0}}, false, {0, {0}}, false, {0, {0}}}
#define DecryptMessage_init_default {0, {0, 0, 0, 0, 0, 0, 0, 0}, false, {0, {0}}, false, {0, {0}}, false, {0, {0}}}
#define DecryptedMessage_init_default {false, {0, {0}}, false, ""}
#define CipherKeyValue_init_default {0, {0, 0, 0, 0, 0, 0, 0, 0}, false, "", false, {0, {0}}, false, 0, false, 0, false, 0, false, {0, {0}}}
#define CipheredKeyValue_init_default {false, {0, {0}}}
#define EstimateTxSize_init_default {0, 0, false, "Bitcoin"}
@ -880,7 +788,6 @@ extern const uint32_t SignTx_lock_time_default;
#define GetECDHSessionKey_init_default {false, IdentityType_init_default, false, {0, {0}}, false, ""}
#define ECDHSessionKey_init_default {false, {0, {0}}}
#define SetU2FCounter_init_default {false, 0}
#define FirmwareErase_init_default {0}
#define DebugLinkDecision_init_default {0}
#define DebugLinkGetState_init_default {0}
#define DebugLinkState_init_default {false, {0, {0}}, false, "", false, "", false, "", false, HDNodeType_init_default, false, 0, false, "", false, {0, {0}}, false, "", false, 0}
@ -919,16 +826,12 @@ extern const uint32_t SignTx_lock_time_default;
#define ResetDevice_init_zero {false, 0, false, 0, false, 0, false, 0, false, "", false, "", false, 0}
#define EntropyRequest_init_zero {0}
#define EntropyAck_init_zero {false, {0, {0}}}
#define RecoveryDevice_init_zero {false, 0, false, 0, false, 0, false, "", false, "", false, 0, false, 0, false, 0}
#define RecoveryDevice_init_zero {false, 0, false, 0, false, 0, false, "", false, "", false, 0, false, 0, false, 0, false, 0}
#define WordRequest_init_zero {false, (WordRequestType)0}
#define WordAck_init_zero {""}
#define SignMessage_init_zero {0, {0, 0, 0, 0, 0, 0, 0, 0}, {0, {0}}, false, ""}
#define VerifyMessage_init_zero {false, "", false, {0, {0}}, false, {0, {0}}, false, ""}
#define MessageSignature_init_zero {false, "", false, {0, {0}}}
#define EncryptMessage_init_zero {false, {0, {0}}, false, {0, {0}}, false, 0, 0, {0, 0, 0, 0, 0, 0, 0, 0}, false, ""}
#define EncryptedMessage_init_zero {false, {0, {0}}, false, {0, {0}}, false, {0, {0}}}
#define DecryptMessage_init_zero {0, {0, 0, 0, 0, 0, 0, 0, 0}, false, {0, {0}}, false, {0, {0}}, false, {0, {0}}}
#define DecryptedMessage_init_zero {false, {0, {0}}, false, ""}
#define CipherKeyValue_init_zero {0, {0, 0, 0, 0, 0, 0, 0, 0}, false, "", false, {0, {0}}, false, 0, false, 0, false, 0, false, {0, {0}}}
#define CipheredKeyValue_init_zero {false, {0, {0}}}
#define EstimateTxSize_init_zero {0, 0, false, ""}
@ -944,7 +847,6 @@ extern const uint32_t SignTx_lock_time_default;
#define GetECDHSessionKey_init_zero {false, IdentityType_init_zero, false, {0, {0}}, false, ""}
#define ECDHSessionKey_init_zero {false, {0, {0}}}
#define SetU2FCounter_init_zero {false, 0}
#define FirmwareErase_init_zero {0}
#define DebugLinkDecision_init_zero {0}
#define DebugLinkGetState_init_zero {0}
#define DebugLinkState_init_zero {false, {0, {0}}, false, "", false, "", false, "", false, HDNodeType_init_zero, false, 0, false, "", false, {0, {0}}, false, "", false, 0}
@ -993,21 +895,7 @@ extern const uint32_t SignTx_lock_time_default;
#define DebugLinkState_reset_entropy_tag 8
#define DebugLinkState_recovery_fake_word_tag 9
#define DebugLinkState_recovery_word_pos_tag 10
#define DecryptMessage_address_n_tag 1
#define DecryptMessage_nonce_tag 2
#define DecryptMessage_message_tag 3
#define DecryptMessage_hmac_tag 4
#define DecryptedMessage_message_tag 1
#define DecryptedMessage_address_tag 2
#define ECDHSessionKey_session_key_tag 1
#define EncryptMessage_pubkey_tag 1
#define EncryptMessage_message_tag 2
#define EncryptMessage_display_only_tag 3
#define EncryptMessage_address_n_tag 4
#define EncryptMessage_coin_name_tag 5
#define EncryptedMessage_nonce_tag 1
#define EncryptedMessage_message_tag 2
#define EncryptedMessage_hmac_tag 3
#define Entropy_entropy_tag 1
#define EntropyAck_entropy_tag 1
#define EstimateTxSize_outputs_count_tag 1
@ -1090,6 +978,7 @@ extern const uint32_t SignTx_lock_time_default;
#define RecoveryDevice_enforce_wordlist_tag 6
#define RecoveryDevice_type_tag 8
#define RecoveryDevice_u2f_counter_tag 9
#define RecoveryDevice_dry_run_tag 10
#define ResetDevice_display_random_tag 1
#define ResetDevice_strength_tag 2
#define ResetDevice_passphrase_protection_tag 3
@ -1156,16 +1045,12 @@ extern const pb_field_t LoadDevice_fields[9];
extern const pb_field_t ResetDevice_fields[8];
extern const pb_field_t EntropyRequest_fields[1];
extern const pb_field_t EntropyAck_fields[2];
extern const pb_field_t RecoveryDevice_fields[9];
extern const pb_field_t RecoveryDevice_fields[10];
extern const pb_field_t WordRequest_fields[2];
extern const pb_field_t WordAck_fields[2];
extern const pb_field_t SignMessage_fields[4];
extern const pb_field_t VerifyMessage_fields[5];
extern const pb_field_t MessageSignature_fields[3];
extern const pb_field_t EncryptMessage_fields[6];
extern const pb_field_t EncryptedMessage_fields[4];
extern const pb_field_t DecryptMessage_fields[5];
extern const pb_field_t DecryptedMessage_fields[3];
extern const pb_field_t CipherKeyValue_fields[8];
extern const pb_field_t CipheredKeyValue_fields[2];
extern const pb_field_t EstimateTxSize_fields[4];
@ -1181,7 +1066,6 @@ extern const pb_field_t SignedIdentity_fields[4];
extern const pb_field_t GetECDHSessionKey_fields[4];
extern const pb_field_t ECDHSessionKey_fields[2];
extern const pb_field_t SetU2FCounter_fields[2];
extern const pb_field_t FirmwareErase_fields[1];
extern const pb_field_t DebugLinkDecision_fields[2];
extern const pb_field_t DebugLinkGetState_fields[1];
extern const pb_field_t DebugLinkState_fields[11];
@ -1222,16 +1106,12 @@ extern const pb_field_t DebugLinkFlashErase_fields[2];
#define ResetDevice_size 72
#define EntropyRequest_size 0
#define EntropyAck_size 131
#define RecoveryDevice_size 78
#define RecoveryDevice_size 80
#define WordRequest_size 6
#define WordAck_size 14
#define SignMessage_size 1094
#define VerifyMessage_size 1156
#define MessageSignature_size 110
#define EncryptMessage_size 1131
#define EncryptedMessage_size 1168
#define DecryptMessage_size 1216
#define DecryptedMessage_size 1070
#define CipherKeyValue_size 1358
#define CipheredKeyValue_size 1027
#define EstimateTxSize_size 31
@ -1247,7 +1127,6 @@ extern const pb_field_t DebugLinkFlashErase_fields[2];
#define GetECDHSessionKey_size (107 + IdentityType_size)
#define ECDHSessionKey_size 67
#define SetU2FCounter_size 6
#define FirmwareErase_size 0
#define DebugLinkDecision_size 2
#define DebugLinkGetState_size 0
#define DebugLinkState_size (1468 + HDNodeType_size)

@ -1 +1 @@
Subproject commit 4eef33b05afb5e8465c8947272bc5421b1b6d896
Subproject commit ae1900a2bcc9a140f636d9ef2c5e029fe397441a