fix buffer size for raw mode & error handling when no device is connected
This commit is contained in:
		| @@ -268,10 +268,8 @@ int main(int argc, char **argv) { | ||||
|  | ||||
|     // calculate output size based on the parameters: | ||||
|     uint64_t resultSize; | ||||
|     if (opts.outputMultiplier <= 1 || opts.raw) { | ||||
|         resultSize = 32u; | ||||
|     } else if (opts.outputMultiplier==2) { | ||||
|         resultSize=64; | ||||
|     if (opts.outputMultiplier <= 2 || opts.raw) { | ||||
|         resultSize = 64u; | ||||
|     } else { | ||||
|         resultSize = 128u; | ||||
|     } | ||||
|   | ||||
| @@ -142,7 +142,7 @@ uint32_t processBytes(uint8_t *bytes, uint8_t *result, uint32_t *entropy, | ||||
|     // gets a snapshot of the keccak state.  BUFLEN must be a multiple of 64, since | ||||
|     // Keccak-1600 uses 64-bit "lanes". | ||||
|  | ||||
|     uint8_t dataOut[1024u]; | ||||
|     uint8_t dataOut[128u]; | ||||
|     KeccakAbsorb(keccakState, bytes, BUFLEN / 64u); | ||||
|  | ||||
|     if (outputMultiplier == 0u) { | ||||
| @@ -203,6 +203,7 @@ devlist_node listUSBDevices(char **message) { | ||||
|         } else { | ||||
|             *message = "Can't find Infinite Noise Multiplier."; | ||||
|         } | ||||
|         return NULL; | ||||
|     } | ||||
|     devlist_node return_list = malloc(sizeof(struct infnoise_devlist_node)); | ||||
|     devlist_node current_entry = return_list; | ||||
| @@ -212,11 +213,10 @@ devlist_node listUSBDevices(char **message) { | ||||
|         if (rc < 0) { | ||||
|             if (!isSuperUser()) { | ||||
|                 *message = "Can't find Infinite Noise Multiplier. Try running as super user?"; | ||||
|                 return NULL; | ||||
|             } else { | ||||
| 	        //todo: *message = "ftdi_usb_get_strings failed: %d (%s)\n", rc, ftdi_get_error_string(&ftdic)); | ||||
|                 return NULL; | ||||
| 		sprintf(*message, "ftdi_usb_get_strings failed: %d (%s)", rc, ftdi_get_error_string(&ftdic)); | ||||
|             } | ||||
|             return NULL; | ||||
|         } | ||||
|         current_entry->id = i; | ||||
|         strcpy(current_entry->serial, serial); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user