homebridge-ratgdo 2.9.2 → 2.9.3

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.
@@ -85,6 +85,9 @@ export declare class EspHomeClient extends EventEmitter {
85
85
  private entityKeys;
86
86
  private entityNames;
87
87
  private entityTypes;
88
+ private protocolState;
89
+ private helloInitiator;
90
+ private messageQueue;
88
91
  /**
89
92
  * Creates a new ESPHome client instance.
90
93
  *
@@ -105,6 +108,14 @@ export declare class EspHomeClient extends EventEmitter {
105
108
  * Handle a newly connected socket.
106
109
  */
107
110
  private handleConnect;
111
+ /**
112
+ * Send the initial HELLO_REQUEST to start the handshake.
113
+ */
114
+ private sendHelloRequest;
115
+ /**
116
+ * Verify the protocol is ready.
117
+ */
118
+ private isReady;
108
119
  /**
109
120
  * Handle socket errors.
110
121
  */
@@ -121,10 +132,34 @@ export declare class EspHomeClient extends EventEmitter {
121
132
  * Handle incoming raw data, frame messages, and dispatch.
122
133
  */
123
134
  private handleData;
135
+ /**
136
+ * Process a message based on current protocol state.
137
+ */
138
+ private processMessage;
139
+ /**
140
+ * Process any queued messages after handshake completion.
141
+ */
142
+ private processQueuedMessages;
124
143
  /**
125
144
  * Dispatch based on message type.
126
145
  */
127
146
  private handleMessage;
147
+ /**
148
+ * Handle HELLO_REQUEST from device.
149
+ */
150
+ private handleHelloRequest;
151
+ /**
152
+ * Handle HELLO_RESPONSE from device.
153
+ */
154
+ private handleHelloResponse;
155
+ /**
156
+ * Send HELLO_RESPONSE.
157
+ */
158
+ private sendHelloResponse;
159
+ /**
160
+ * Handle CONNECT_RESPONSE from device.
161
+ */
162
+ private handleConnectResponse;
128
163
  /**
129
164
  * Handle device info response from the ESPHome device.
130
165
  */
@@ -302,7 +337,7 @@ export declare class EspHomeClient extends EventEmitter {
302
337
  */
303
338
  private encodeVarint;
304
339
  /**
305
- * Read a VarInt from buffer at offset; returns [value, bytesRead].
340
+ * Read a VarInt from buffer at offset; returns [value, bytesRead] or null if incomplete.
306
341
  */
307
342
  private readVarint;
308
343
  /**
@@ -50,6 +50,18 @@ var MessageType;
50
50
  MessageType[MessageType["LIST_ENTITIES_BUTTON_RESPONSE"] = 61] = "LIST_ENTITIES_BUTTON_RESPONSE";
51
51
  MessageType[MessageType["BUTTON_COMMAND_REQUEST"] = 62] = "BUTTON_COMMAND_REQUEST";
52
52
  })(MessageType || (MessageType = {}));
53
+ /**
54
+ * Protocol states for proper handshake sequencing.
55
+ */
56
+ var ProtocolState;
57
+ (function (ProtocolState) {
58
+ ProtocolState[ProtocolState["DISCONNECTED"] = 0] = "DISCONNECTED";
59
+ ProtocolState[ProtocolState["CONNECTED"] = 1] = "CONNECTED";
60
+ ProtocolState[ProtocolState["HELLO_SENT"] = 2] = "HELLO_SENT";
61
+ ProtocolState[ProtocolState["HELLO_RECEIVED"] = 3] = "HELLO_RECEIVED";
62
+ ProtocolState[ProtocolState["AUTHENTICATED"] = 4] = "AUTHENTICATED";
63
+ ProtocolState[ProtocolState["READY"] = 5] = "READY";
64
+ })(ProtocolState || (ProtocolState = {}));
53
65
  /**
54
66
  * Wire types used in protobuf encoding.
55
67
  */
@@ -114,6 +126,12 @@ export class EspHomeClient extends EventEmitter {
114
126
  entityNames;
115
127
  // Map from entity keys to their type labels.
116
128
  entityTypes;
129
+ // Current protocol state.
130
+ protocolState;
131
+ // Tracks if we initiated the hello exchange.
132
+ helloInitiator;
133
+ // Message queue for messages received out of order.
134
+ messageQueue;
117
135
  /**
118
136
  * Creates a new ESPHome client instance.
119
137
  *
@@ -129,9 +147,12 @@ export class EspHomeClient extends EventEmitter {
129
147
  this.entityKeys = new Map();
130
148
  this.entityNames = new Map();
131
149
  this.entityTypes = new Map();
150
+ this.helloInitiator = false;
132
151
  this.host = host;
133
152
  this.log = log;
153
+ this.messageQueue = [];
134
154
  this.port = port;
155
+ this.protocolState = ProtocolState.DISCONNECTED;
135
156
  this.recvBuffer = Buffer.alloc(0);
136
157
  this.remoteDeviceInfo = null;
137
158
  }
@@ -141,6 +162,10 @@ export class EspHomeClient extends EventEmitter {
141
162
  connect() {
142
163
  // Clean up any existing data listener before establishing a new connection.
143
164
  this.cleanupDataListener();
165
+ // Reset protocol state.
166
+ this.protocolState = ProtocolState.DISCONNECTED;
167
+ this.helloInitiator = false;
168
+ this.messageQueue = [];
144
169
  // Create a new TCP connection to the ESPHome device.
145
170
  this.clientSocket = createConnection({ host: this.host, port: this.port });
146
171
  // Handle successful connection by initiating the handshake process.
@@ -164,6 +189,7 @@ export class EspHomeClient extends EventEmitter {
164
189
  this.clientSocket.destroy();
165
190
  this.clientSocket = null;
166
191
  }
192
+ this.protocolState = ProtocolState.DISCONNECTED;
167
193
  this.emit("disconnect");
168
194
  }
169
195
  /**
@@ -171,18 +197,36 @@ export class EspHomeClient extends EventEmitter {
171
197
  */
172
198
  handleConnect() {
173
199
  this.log.debug("Connected to " + this.host + ":" + this.port + ".");
174
- // Send the initial hello request to start the handshake.
200
+ this.protocolState = ProtocolState.CONNECTED;
201
+ // Wait a brief moment to see if the device sends us a HELLO_REQUEST first. It seems that some devices may initiate the handshake rather than expect us to.
202
+ setTimeout(() => this.protocolState === ProtocolState.CONNECTED && this.sendHelloRequest(), 100);
203
+ }
204
+ /**
205
+ * Send the initial HELLO_REQUEST to start the handshake.
206
+ */
207
+ sendHelloRequest() {
208
+ this.log.debug("Sending HELLO_REQUEST");
209
+ this.helloInitiator = true;
175
210
  // Prepare the client information string for the hello message.
176
211
  const clientInfo = Buffer.from("homebridge-ratgdo", "utf8");
177
212
  // Build the hello payload fields.
178
213
  const fields = [
179
- { fieldNumber: 1, value: clientInfo, wireType: WireType.LENGTH_DELIMITED },
180
- { fieldNumber: 2, value: 1, wireType: WireType.VARINT },
181
- { fieldNumber: 3, value: 10, wireType: WireType.VARINT }
214
+ { fieldNumber: 1, value: clientInfo, wireType: WireType.LENGTH_DELIMITED }
182
215
  ];
183
216
  // Encode and send the hello request.
184
217
  const payload = this.encodeProtoFields(fields);
185
218
  this.frameAndSend(MessageType.HELLO_REQUEST, payload);
219
+ this.protocolState = ProtocolState.HELLO_SENT;
220
+ }
221
+ /**
222
+ * Verify the protocol is ready.
223
+ */
224
+ isReady(command) {
225
+ if (this.protocolState === ProtocolState.READY) {
226
+ return true;
227
+ }
228
+ this.log.warn("Cannot send " + command + " command - protocol not ready (state: " + this.protocolState + ")");
229
+ return false;
186
230
  }
187
231
  /**
188
232
  * Handle socket errors.
@@ -230,7 +274,7 @@ export class EspHomeClient extends EventEmitter {
230
274
  while (this.recvBuffer.length >= MIN_FRAME_SIZE) {
231
275
  // Verify the frame starts with the expected sentinel byte.
232
276
  if (this.recvBuffer[0] !== 0) {
233
- this.log.error("Framing error: missing 0x00.");
277
+ this.log.error("Framing error: missing 0x00. Buffer: " + this.recvBuffer.subarray(0, Math.min(20, this.recvBuffer.length)).toString("hex"));
234
278
  // Find the next sentinel position.
235
279
  const idx = this.recvBuffer.indexOf(0);
236
280
  // If no sentinel is found, drop all data and exit loop.
@@ -244,17 +288,19 @@ export class EspHomeClient extends EventEmitter {
244
288
  continue;
245
289
  }
246
290
  // Attempt to read the message length varint.
247
- const [length, lenBytes] = this.readVarint(this.recvBuffer, 1);
291
+ const lengthResult = this.readVarint(this.recvBuffer, 1);
248
292
  // Incomplete varint; wait for more data.
249
- if ((length === -1) && (lenBytes === -1)) {
293
+ if (!lengthResult) {
250
294
  break;
251
295
  }
296
+ const [length, lenBytes] = lengthResult;
252
297
  // Attempt to read the message type varint.
253
- const [type, typeBytes] = this.readVarint(this.recvBuffer, 1 + lenBytes);
298
+ const typeResult = this.readVarint(this.recvBuffer, 1 + lenBytes);
254
299
  // Incomplete varint; wait for more data.
255
- if ((type === -1) && (typeBytes === -1)) {
300
+ if (!typeResult) {
256
301
  break;
257
302
  }
303
+ const [type, typeBytes] = typeResult;
258
304
  // Calculate the total header size.
259
305
  const headerSize = 1 + lenBytes + typeBytes;
260
306
  // If full message is not yet received, wait for more data.
@@ -262,11 +308,49 @@ export class EspHomeClient extends EventEmitter {
262
308
  break;
263
309
  }
264
310
  // Extract the message payload.
265
- const payload = this.recvBuffer.subarray(headerSize, (headerSize + length));
266
- // Dispatch the message to the handler.
267
- this.handleMessage(type, payload);
268
- // Remove the processed message from the buffer.
311
+ const payload = this.recvBuffer.subarray(headerSize, headerSize + length);
312
+ // Remove the processed message from the buffer before handling to prevent re-processing if handleMessage fails.
269
313
  this.recvBuffer = this.recvBuffer.subarray(headerSize + length);
314
+ // Handle or queue the message based on protocol state.
315
+ this.processMessage(type, payload);
316
+ }
317
+ }
318
+ /**
319
+ * Process a message based on current protocol state.
320
+ */
321
+ processMessage(type, payload) {
322
+ // During handshake, some messages need to be processed in order.
323
+ if (this.protocolState < ProtocolState.READY) {
324
+ // These messages can be processed immediately during handshake.
325
+ const immediateMessages = [
326
+ MessageType.HELLO_REQUEST,
327
+ MessageType.HELLO_RESPONSE,
328
+ MessageType.CONNECT_REQUEST,
329
+ MessageType.CONNECT_RESPONSE,
330
+ MessageType.DISCONNECT_REQUEST,
331
+ MessageType.DISCONNECT_RESPONSE,
332
+ MessageType.PING_REQUEST,
333
+ MessageType.PING_RESPONSE
334
+ ];
335
+ if (!immediateMessages.includes(type)) {
336
+ // Queue other messages until handshake is complete.
337
+ this.log.debug("Queueing message type " + type + " until handshake complete");
338
+ this.messageQueue.push({ payload, type });
339
+ return;
340
+ }
341
+ }
342
+ // Dispatch the message to the handler.
343
+ this.handleMessage(type, payload);
344
+ }
345
+ /**
346
+ * Process any queued messages after handshake completion.
347
+ */
348
+ processQueuedMessages() {
349
+ const queue = this.messageQueue;
350
+ this.messageQueue = [];
351
+ for (const msg of queue) {
352
+ this.log.debug("Processing queued message type " + msg.type);
353
+ this.handleMessage(msg.type, msg.payload);
270
354
  }
271
355
  }
272
356
  /**
@@ -278,15 +362,18 @@ export class EspHomeClient extends EventEmitter {
278
362
  this.emit("message", { payload, type });
279
363
  // Handle specific message types.
280
364
  switch (type) {
365
+ case MessageType.HELLO_REQUEST:
366
+ this.handleHelloRequest();
367
+ break;
281
368
  case MessageType.HELLO_RESPONSE:
282
- // Send the connect request to complete the handshake.
283
- this.frameAndSend(MessageType.CONNECT_REQUEST, Buffer.alloc(0));
369
+ this.handleHelloResponse();
370
+ break;
371
+ case MessageType.CONNECT_REQUEST:
372
+ // Device is asking us to connect - this shouldn't happen in client mode.
373
+ this.log.warn("Received unexpected CONNECT_REQUEST from device");
284
374
  break;
285
375
  case MessageType.CONNECT_RESPONSE:
286
- // Query device information once we're connected.
287
- this.frameAndSend(MessageType.DEVICE_INFO_REQUEST, Buffer.alloc(0));
288
- // Start entity enumeration after successful connection.
289
- this.frameAndSend(MessageType.LIST_ENTITIES_REQUEST, Buffer.alloc(0));
376
+ this.handleConnectResponse(payload);
290
377
  break;
291
378
  case MessageType.DISCONNECT_REQUEST:
292
379
  // Start entity enumeration after successful connection.
@@ -298,7 +385,6 @@ export class EspHomeClient extends EventEmitter {
298
385
  break;
299
386
  case MessageType.DEVICE_INFO_RESPONSE:
300
387
  this.handleDeviceInfoResponse(payload);
301
- this.emit("connect", this.remoteDeviceInfo);
302
388
  break;
303
389
  case MessageType.LIST_ENTITIES_DONE_RESPONSE:
304
390
  // Emit the complete list of discovered entities.
@@ -348,10 +434,89 @@ export class EspHomeClient extends EventEmitter {
348
434
  return;
349
435
  }
350
436
  // Unhandled message type.
351
- this.log.warn("Unhandled message type: " + type + " | payload: " + payload.toString("hex"));
437
+ this.log.warn("Unhandled message type: " + type + " | " + MessageType[type] + " | payload: " + payload.toString("hex"));
438
+ // If payload looks like text, also show it.
439
+ if (payload.length > 0 && payload.length < 100) {
440
+ const text = payload.toString("utf8").replace(/[^\x20-\x7E]/g, ".");
441
+ if (text.match(/^[\x20-\x7E]+$/)) {
442
+ this.log.warn("Payload as text: " + text);
443
+ }
444
+ }
352
445
  break;
353
446
  }
354
447
  }
448
+ /**
449
+ * Handle HELLO_REQUEST from device.
450
+ */
451
+ handleHelloRequest() {
452
+ this.log.debug("Received HELLO_REQUEST");
453
+ // Some devices send HELLO_REQUEST first.
454
+ if (this.protocolState === ProtocolState.CONNECTED) {
455
+ // Respond with HELLO_RESPONSE.
456
+ this.sendHelloResponse();
457
+ this.protocolState = ProtocolState.HELLO_RECEIVED;
458
+ }
459
+ else if (this.protocolState === ProtocolState.HELLO_SENT) {
460
+ // We both sent HELLO_REQUEST - device wins, send response.
461
+ this.log.debug("Simultaneous HELLO_REQUEST - responding");
462
+ this.sendHelloResponse();
463
+ this.protocolState = ProtocolState.HELLO_RECEIVED;
464
+ }
465
+ else {
466
+ this.log.warn("Unexpected HELLO_REQUEST in state " + this.protocolState);
467
+ }
468
+ }
469
+ /**
470
+ * Handle HELLO_RESPONSE from device.
471
+ */
472
+ handleHelloResponse() {
473
+ this.log.debug("Received HELLO_RESPONSE");
474
+ if (this.protocolState === ProtocolState.HELLO_SENT) {
475
+ // Send the connect request to complete the handshake.
476
+ this.frameAndSend(MessageType.CONNECT_REQUEST, Buffer.alloc(0));
477
+ this.protocolState = ProtocolState.AUTHENTICATED;
478
+ }
479
+ else {
480
+ this.log.warn("Unexpected HELLO_RESPONSE in state " + this.protocolState);
481
+ }
482
+ }
483
+ /**
484
+ * Send HELLO_RESPONSE.
485
+ */
486
+ sendHelloResponse() {
487
+ this.log.debug("Sending HELLO_RESPONSE");
488
+ // Prepare the client information string for the hello message.
489
+ const clientInfo = Buffer.from("homebridge-ratgdo", "utf8");
490
+ // Build the hello payload fields.
491
+ const fields = [
492
+ { fieldNumber: 1, value: clientInfo, wireType: WireType.LENGTH_DELIMITED }
493
+ ];
494
+ // Encode and send the hello response.
495
+ const payload = this.encodeProtoFields(fields);
496
+ this.frameAndSend(MessageType.HELLO_RESPONSE, payload);
497
+ }
498
+ /**
499
+ * Handle CONNECT_RESPONSE from device.
500
+ */
501
+ handleConnectResponse(payload) {
502
+ this.log.debug("Received CONNECT_RESPONSE");
503
+ const fields = this.decodeProtobuf(payload);
504
+ // Check if there's an error code (field 1).
505
+ const invalidPassword = this.extractNumberField(fields, 1);
506
+ if (invalidPassword === 1) {
507
+ this.log.error("Connection rejected: Invalid password");
508
+ this.disconnect();
509
+ return;
510
+ }
511
+ // Connection successful.
512
+ this.protocolState = ProtocolState.READY;
513
+ // Query device information once we're connected.
514
+ this.frameAndSend(MessageType.DEVICE_INFO_REQUEST, Buffer.alloc(0));
515
+ // Start entity enumeration after successful connection.
516
+ this.frameAndSend(MessageType.LIST_ENTITIES_REQUEST, Buffer.alloc(0));
517
+ // Process any queued messages.
518
+ this.processQueuedMessages();
519
+ }
355
520
  /**
356
521
  * Handle device info response from the ESPHome device.
357
522
  */
@@ -387,6 +552,7 @@ export class EspHomeClient extends EventEmitter {
387
552
  info.bluetoothProxyFeatureFlags = this.extractNumberField(fields, 12);
388
553
  // Store the remote device info.
389
554
  this.remoteDeviceInfo = info;
555
+ this.emit("connect", this.remoteDeviceInfo);
390
556
  }
391
557
  /**
392
558
  * Return the device information of the connected ESPHome device if available.
@@ -560,12 +726,15 @@ export class EspHomeClient extends EventEmitter {
560
726
  * Frames a raw protobuf payload with the 0x00 sentinel, length, and message type.
561
727
  */
562
728
  frameAndSend(type, payload) {
729
+ // Verify we have an active connection.
730
+ if (!this.clientSocket || this.protocolState === ProtocolState.DISCONNECTED) {
731
+ this.log.warn("Attempted to send message type " + type + " without active connection");
732
+ return;
733
+ }
563
734
  // Construct the message header with sentinel, length, and type.
564
735
  const header = Buffer.concat([Buffer.from([0x00]), this.encodeVarint(payload.length), this.encodeVarint(type)]);
565
736
  // Write the complete framed message to the socket.
566
- if (this.clientSocket) {
567
- this.clientSocket.write(Buffer.concat([header, payload]));
568
- }
737
+ this.clientSocket.write(Buffer.concat([header, payload]));
569
738
  }
570
739
  /**
571
740
  * Encode protobuf fields into a buffer.
@@ -699,6 +868,10 @@ export class EspHomeClient extends EventEmitter {
699
868
  * @param state - `true` for on, `false` for off.
700
869
  */
701
870
  sendSwitchCommand(id, state) {
871
+ // Validate our state.
872
+ if (!this.isReady("switch")) {
873
+ return;
874
+ }
702
875
  // Look up the entity key using the provided ID.
703
876
  const key = this.entityKeys.get(id);
704
877
  // Log debugging information.
@@ -720,6 +893,10 @@ export class EspHomeClient extends EventEmitter {
720
893
  * @param id - The entity ID (format: "button-entityname").
721
894
  */
722
895
  sendButtonCommand(id) {
896
+ // Validate our state.
897
+ if (!this.isReady("button")) {
898
+ return;
899
+ }
723
900
  // Look up the entity key using the provided ID.
724
901
  const key = this.entityKeys.get(id);
725
902
  // Log debugging information.
@@ -757,6 +934,10 @@ export class EspHomeClient extends EventEmitter {
757
934
  * ```
758
935
  */
759
936
  sendCoverCommand(id, options) {
937
+ // Validate our state.
938
+ if (!this.isReady("cover")) {
939
+ return;
940
+ }
760
941
  // Validate that at least one option is provided.
761
942
  if (!options.command && typeof options.position !== "number" && typeof options.tilt !== "number") {
762
943
  this.log.warn("sendCoverCommand requires at least one option: command, position, or tilt");
@@ -814,6 +995,10 @@ export class EspHomeClient extends EventEmitter {
814
995
  * @param options.brightness - Brightness level 0.0-1.0 (optional).
815
996
  */
816
997
  sendLightCommand(id, options) {
998
+ // Validate our state.
999
+ if (!this.isReady("light")) {
1000
+ return;
1001
+ }
817
1002
  // Look up the entity key using the provided ID.
818
1003
  const key = this.entityKeys.get(id);
819
1004
  // Log debugging information.
@@ -853,6 +1038,10 @@ export class EspHomeClient extends EventEmitter {
853
1038
  * @param code - Optional unlock code.
854
1039
  */
855
1040
  sendLockCommand(id, command, code) {
1041
+ // Validate our state.
1042
+ if (!this.isReady("lock")) {
1043
+ return;
1044
+ }
856
1045
  // Look up the entity key using the provided ID.
857
1046
  const key = this.entityKeys.get(id);
858
1047
  // Log debugging information.
@@ -904,19 +1093,20 @@ export class EspHomeClient extends EventEmitter {
904
1093
  return Buffer.from(bytes);
905
1094
  }
906
1095
  /**
907
- * Read a VarInt from buffer at offset; returns [value, bytesRead].
1096
+ * Read a VarInt from buffer at offset; returns [value, bytesRead] or null if incomplete.
908
1097
  */
909
1098
  readVarint(buffer, offset) {
910
1099
  // Accumulator for the decoded integer result.
911
1100
  let result = 0;
912
1101
  // Counter for how many bytes we've consumed.
913
1102
  let bytesRead = 0;
1103
+ // Maximum bytes for a varint.
1104
+ const maxBytes = 10;
914
1105
  // Read byte-by-byte, adding 7 bits at each step, until the continuation bit is clear.
915
- for (let shift = 0;; shift += 7) {
916
- // If we're trying to read past the end, let's quit.
1106
+ for (let shift = 0; bytesRead < maxBytes; shift += 7) {
1107
+ // If we're trying to read past the end, return null to indicate incomplete data.
917
1108
  if (offset + bytesRead >= buffer.length) {
918
- this.log.error("Incomplete response received from the API.");
919
- return [-1, -1];
1109
+ return null;
920
1110
  }
921
1111
  // Fetch the next raw byte from the buffer.
922
1112
  const byte = buffer[offset + bytesRead];
@@ -929,6 +1119,11 @@ export class EspHomeClient extends EventEmitter {
929
1119
  break;
930
1120
  }
931
1121
  }
1122
+ // Check if we exceeded the maximum varint size.
1123
+ if (bytesRead === maxBytes && (buffer[offset + bytesRead - 1] & 0x80) !== 0) {
1124
+ this.log.error("Varint too long at offset " + offset);
1125
+ return null;
1126
+ }
932
1127
  // Return the decoded integer and the number of bytes we consumed.
933
1128
  return [result, bytesRead];
934
1129
  }
@@ -946,24 +1141,41 @@ export class EspHomeClient extends EventEmitter {
946
1141
  let value;
947
1142
  let vLen;
948
1143
  // Read the next varint as the tag (combines field number and wire type).
949
- const [tag, tagLen] = this.readVarint(buffer, offset);
1144
+ const tagResult = this.readVarint(buffer, offset);
1145
+ if (!tagResult) {
1146
+ // Incomplete tag at end of buffer.
1147
+ break;
1148
+ }
1149
+ const [tag, tagLen] = tagResult;
950
1150
  // Advance past the tag bytes.
951
1151
  offset += tagLen;
952
1152
  // Extract the field number (upper bits of tag).
953
1153
  const fieldNum = tag >>> 3;
954
1154
  // Extract the wire type (lower 3 bits of tag).
955
1155
  const wireType = tag & 0x07;
1156
+ let vResult;
956
1157
  // Decode the payload based on its wire type.
957
1158
  switch (wireType) {
958
1159
  case WireType.VARINT:
959
1160
  // Read a varint payload.
960
- [v, vLen] = this.readVarint(buffer, offset);
1161
+ vResult = this.readVarint(buffer, offset);
1162
+ if (!vResult) {
1163
+ // Incomplete varint.
1164
+ this.log.warn("Incomplete varint in protobuf at offset " + offset);
1165
+ return fields;
1166
+ }
1167
+ [v, vLen] = vResult;
961
1168
  // Assign the numeric result.
962
1169
  value = v;
963
1170
  // Advance past the varint bytes.
964
1171
  offset += vLen;
965
1172
  break;
966
1173
  case WireType.FIXED64:
1174
+ // Ensure we have 8 bytes.
1175
+ if (offset + 8 > buffer.length) {
1176
+ this.log.warn("Incomplete fixed64 in protobuf at offset " + offset);
1177
+ return fields;
1178
+ }
967
1179
  // Read a 64-bit little-endian double.
968
1180
  value = buffer.readDoubleLE(offset);
969
1181
  // Advance by eight bytes.
@@ -971,15 +1183,31 @@ export class EspHomeClient extends EventEmitter {
971
1183
  break;
972
1184
  case WireType.LENGTH_DELIMITED:
973
1185
  // Read the length prefix as a varint.
974
- [len, lenLen] = this.readVarint(buffer, offset);
1186
+ vResult = this.readVarint(buffer, offset);
1187
+ if (!vResult) {
1188
+ // Incomplete length prefix.
1189
+ this.log.warn("Incomplete length prefix in protobuf at offset " + offset);
1190
+ return fields;
1191
+ }
1192
+ [len, lenLen] = vResult;
975
1193
  // Advance past the length prefix.
976
1194
  offset += lenLen;
1195
+ // Ensure we have enough bytes for the payload.
1196
+ if (offset + len > buffer.length) {
1197
+ this.log.warn("Incomplete length-delimited field in protobuf at offset " + offset + ", need " + len + " bytes");
1198
+ return fields;
1199
+ }
977
1200
  // Slice out the next len bytes as a Buffer.
978
1201
  value = buffer.subarray(offset, offset + len);
979
1202
  // Advance past the length-delimited payload.
980
1203
  offset += len;
981
1204
  break;
982
1205
  case WireType.FIXED32:
1206
+ // Ensure we have 4 bytes.
1207
+ if (offset + 4 > buffer.length) {
1208
+ this.log.warn("Incomplete fixed32 in protobuf at offset " + offset);
1209
+ return fields;
1210
+ }
983
1211
  // For 32-bit fields, return the raw bytes for caller interpretation.
984
1212
  value = buffer.subarray(offset, offset + 4);
985
1213
  // Advance by four bytes.
@@ -987,7 +1215,7 @@ export class EspHomeClient extends EventEmitter {
987
1215
  break;
988
1216
  default:
989
1217
  // Warn about unsupported wire types and return what's decoded so far.
990
- this.log.warn("Unsupported wire type " + wireType + ".");
1218
+ this.log.warn("Unsupported wire type " + wireType + " at offset " + offset);
991
1219
  return fields;
992
1220
  }
993
1221
  // Ensure there is an array to hold this field's values.
@@ -1 +1 @@
1
- {"version":3,"file":"ratgdo-api.js","sourceRoot":"","sources":["../src/ratgdo-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ratgdo-api.js","sourceRoot":"","sources":["../src/ratgdo-api.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "homebridge-ratgdo",
3
3
  "displayName": "Homebridge Ratgdo",
4
- "version": "2.9.2",
4
+ "version": "2.9.3",
5
5
  "description": "HomeKit integration using Ratgdo and Konnected devices for LiftMaster and Chamberlain garage door openers, without requiring myQ.",
6
6
  "license": "ISC",
7
7
  "repository": {