crypto/rand/rand_unix.c:204: error: BUFFER_OVERRUN_L3
  Offset: [12, 17] Size: [13, 18] by call to `RAND_query_egd_bytes`.
Showing all 7 steps of the trace


crypto/rand/rand_unix.c:138:36: Array declaration
136.   #endif
137.   #ifdef DEVRANDOM_EGD
138.   	static const char *egdsockets[] = { DEVRANDOM_EGD, NULL };
                                          ^
139.   	const char **egdsocket = NULL;
140.   #endif

crypto/rand/rand_unix.c:204:7: Call
202.   		int r;
203.   
204.   		r = RAND_query_egd_bytes(*egdsocket, (unsigned char *)tmpbuf+n,
             ^
205.   					 ENTROPY_NEEDED-n);
206.   		if (r > 0)

crypto/rand/rand_egd.c:88:1: <Offset trace>
86.   #endif
87.   
88. > int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes)
89.   	{
90.   	int ret = 0;

crypto/rand/rand_egd.c:88:1: Parameter `path->strlen`
  86.   #endif
  87.   
  88. > int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes)
  89.   	{
  90.   	int ret = 0;

crypto/rand/rand_egd.c:88:1: <Length trace>
86.   #endif
87.   
88. > int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes)
89.   	{
90.   	int ret = 0;

crypto/rand/rand_egd.c:88:1: Parameter `*path`
  86.   #endif
  87.   
  88. > int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes)
  89.   	{
  90.   	int ret = 0;

crypto/rand/rand_egd.c:100:2: Array access: Offset: [12, 17] Size: [13, 18] by call to `RAND_query_egd_bytes` 
  98.   	if (strlen(path) > sizeof(addr.sun_path))
  99.   		return (-1);
  100.   	strcpy(addr.sun_path,path);
          ^
  101.   	len = offsetof(struct sockaddr_un, sun_path) + strlen(path);
  102.   	fd = socket(AF_UNIX, SOCK_STREAM, 0);
