File tree 3 files changed +18
-6
lines changed
3 files changed +18
-6
lines changed Original file line number Diff line number Diff line change @@ -359,8 +359,12 @@ uint8_t ESP8266AVRISP::flash_read(uint8_t hilo, int addr) {
359
359
0 );
360
360
}
361
361
362
- void ESP8266AVRISP::flash_read_page (int length) {
362
+ bool ESP8266AVRISP::flash_read_page (int length) {
363
363
uint8_t *data = (uint8_t *) malloc (length + 1 );
364
+ if (!data)
365
+ {
366
+ return false ;
367
+ }
364
368
for (int x = 0 ; x < length; x += 2 ) {
365
369
*(data + x) = flash_read (LOW, here);
366
370
*(data + x + 1 ) = flash_read (HIGH, here);
@@ -369,12 +373,16 @@ void ESP8266AVRISP::flash_read_page(int length) {
369
373
*(data + length) = Resp_STK_OK;
370
374
_client.write ((const uint8_t *)data, (size_t )(length + 1 ));
371
375
free (data);
372
- return ;
376
+ return true ;
373
377
}
374
378
375
- void ESP8266AVRISP::eeprom_read_page (int length) {
379
+ bool ESP8266AVRISP::eeprom_read_page (int length) {
376
380
// here again we have a word address
377
381
uint8_t *data = (uint8_t *) malloc (length + 1 );
382
+ if (!data)
383
+ {
384
+ return false ;
385
+ }
378
386
int start = here * 2 ;
379
387
for (int x = 0 ; x < length; x++) {
380
388
int addr = start + x;
@@ -384,7 +392,7 @@ void ESP8266AVRISP::eeprom_read_page(int length) {
384
392
*(data + length) = Resp_STK_OK;
385
393
_client.write ((const uint8_t *)data, (size_t )(length + 1 ));
386
394
free (data);
387
- return ;
395
+ return true ;
388
396
}
389
397
390
398
void ESP8266AVRISP::read_page () {
Original file line number Diff line number Diff line change @@ -89,8 +89,8 @@ class ESP8266AVRISP {
89
89
void commit (int addr);
90
90
void program_page ();
91
91
uint8_t flash_read (uint8_t hilo, int addr);
92
- void flash_read_page (int length);
93
- void eeprom_read_page (int length);
92
+ bool flash_read_page (int length);
93
+ bool eeprom_read_page (int length);
94
94
void read_page ();
95
95
void read_signature ();
96
96
Original file line number Diff line number Diff line change @@ -526,6 +526,10 @@ namespace brssl {
526
526
case BR_KEYTYPE_EC:
527
527
ek = br_skey_decoder_get_ec (dc.get ());
528
528
sk = (private_key*)malloc (sizeof * sk);
529
+ if (!sk)
530
+ {
531
+ return nullptr ;
532
+ }
529
533
sk->key_type = BR_KEYTYPE_EC;
530
534
sk->key .ec .curve = ek->curve ;
531
535
sk->key .ec .x = (uint8_t *)malloc (ek->xlen );
You can’t perform that action at this time.
0 commit comments