|
Message-ID: <00d401ce0639$6873b8c0$395b2a40$@net> Date: Fri, 8 Feb 2013 14:18:07 -0600 From: "jfoug" <jfoug@....net> To: <john-dev@...ts.openwall.com> Subject: RE: C for dummies From: magnum [mailto:john.magnum@...hmail.com] > >This question stems from an OpenCL problem we just solved off list. > >In common.c we have several lines like this: > >char itoa16u[16] = "0123456789ABCDEF"; > >Is this a bug or not? That string literal is 17 bytes if you ask me. In the OpenCL format we were debugging, this caused major problems. > >I am 100% autodidact, so I am not sure the above way of writing it is definitely wrong or not (my guess is it is wrong). Personally I would write it with empty braces (btw I'd also use const). OTOH if it's that bad, I'm puzzled no compiler or tool complained about it. That is a bug. I have had to make 'changes' for other build environments, when taking code from Jtr. I am not really sure HOW it builds properly in Jtr. I would much rather see this as const char itoa16u[] = "0123456789ABCDEF"; OR const char itoa16u[16] = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; if we had to maintain sizeof(itoa16u) == 16 for something. I also do not know why compilers were not complaining. When I cut those lines out and put them into other packages, (like the recent wpapcap2john project), I did get compiler errors about too many elements, and had to change the var declaration.
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.