public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* array underflow in receive_SyncParam()?
@ 2012-03-27  7:10 Dan Carpenter
  2012-03-27 11:32 ` Philipp Reisner
  0 siblings, 1 reply; 4+ messages in thread
From: Dan Carpenter @ 2012-03-27  7:10 UTC (permalink / raw)
  To: Philipp Reisner; +Cc: drbd-user, linux-kernel

I had a question about the following code:

drivers/block/drbd/drbd_receiver.c
  2808                  if (apv == 88) {
  2809                          if (data_size > SHARED_SECRET_MAX) {
  2810                                  dev_err(DEV, "verify-alg too long, "
  2811                                      "peer wants %u, accepting only %u byte\n",
  2812                                                  data_size, SHARED_SECRET_MAX);
  2813                                  return false;
  2814                          }
  2815  
  2816                          if (drbd_recv(mdev, p->verify_alg, data_size) != data_size)
  2817                                  return false;
  2818  
  2819                          /* we expect NUL terminated string */
  2820                          /* but just in case someone tries to be evil */
  2821                          D_ASSERT(p->verify_alg[data_size-1] == 0);
  2822                          p->verify_alg[data_size-1] = 0;
                                              ^^^^^^^^^
Is it possible for data_size to be zero here leading to an array
underflow?  We test for overflows, but I don't see any place where we
test for zero.

regards,
dan carpenter

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-03-28  8:26 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-27  7:10 array underflow in receive_SyncParam()? Dan Carpenter
2012-03-27 11:32 ` Philipp Reisner
2012-03-27 11:43   ` Dan Carpenter
2012-03-28  8:26     ` Philipp Reisner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox