Re: [PATCH] rtl8188eu: Correcting macro ROUND macro defination
From: Pushkar Jambhlekar
Date: Tue Mar 14 2017 - 08:13:58 EST
Your concerns were valid. Since 'do' is defined on the new-line, git
did not include it in diff.
On Tue, Mar 14, 2017 at 5:22 PM, Alexander Kapshuk
<alexander.kapshuk@xxxxxxxxx> wrote:
> On Tue, Mar 14, 2017 at 1:44 PM, Pushkar Jambhlekar
> <pushkar.iit@xxxxxxxxx> wrote:
>> Hi Alexander,
>>
>> It is not needed for a macro. I am modifying do---while() loop for ROUND macro.
>>
>> /**
>> * Expand the cipher key into the encryption key schedule.
>> *
>> * @return the number of rounds for the given cipher key size.
>> */
>> #define ROUND(i, d, s) \
>> do { \
>> d##0 = TE0(s##0) ^ TE1(s##1) ^ TE2(s##2) ^ TE3(s##3) ^ rk[4 * i]; \
>> d##1 = TE0(s##1) ^ TE1(s##2) ^ TE2(s##3) ^ TE3(s##0) ^ rk[4 * i + 1]; \
>> d##2 = TE0(s##2) ^ TE1(s##3) ^ TE2(s##0) ^ TE3(s##1) ^ rk[4 * i + 2]; \
>> d##3 = TE0(s##3) ^ TE1(s##0) ^ TE2(s##1) ^ TE3(s##2) ^ rk[4 * i + 3]; \
>> } while (0)
>>
>> On Tue, Mar 14, 2017 at 5:02 PM, Alexander Kapshuk
>> <alexander.kapshuk@xxxxxxxxx> wrote:
>>> On Tue, Mar 14, 2017 at 1:26 PM, Pushkar Jambhlekar
>>> <pushkar.iit@xxxxxxxxx> wrote:
>>>> Description:
>>>> There should not be ';' after do ... while(0) in macro defination
>>>>
>>>> Signed-off-by: Pushkar Jambhlekar <pushkar.iit@xxxxxxxxx>
>>>> ---
>>>> drivers/staging/rtl8188eu/core/rtw_security.c | 2 +-
>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/staging/rtl8188eu/core/rtw_security.c b/drivers/staging/rtl8188eu/core/rtw_security.c
>>>> index b283a490..5b1ef22 100644
>>>> --- a/drivers/staging/rtl8188eu/core/rtw_security.c
>>>> +++ b/drivers/staging/rtl8188eu/core/rtw_security.c
>>>> @@ -1690,4 +1690,4 @@ do { \
>>>> d##1 = TE0(s##1) ^ TE1(s##2) ^ TE2(s##3) ^ TE3(s##0) ^ rk[4 * i + 1]; \
>>>> d##2 = TE0(s##2) ^ TE1(s##3) ^ TE2(s##0) ^ TE3(s##1) ^ rk[4 * i + 2]; \
>>>> d##3 = TE0(s##3) ^ TE1(s##0) ^ TE2(s##1) ^ TE3(s##2) ^ rk[4 * i + 3]; \
>>>> -} while (0);
>>>> +} while (0)
>>>> --
>>>> 2.7.4
>>>>
>>>
>>> A semicolon is required after 'while(bool);' in 'do..while'.
>>> Without it, you get a compile time error.
>>
>>
>>
>> --
>> Jambhlekar Pushkar Arun
>> M.Tech IIT Roorkee
>
> You're right. My apologies.
--
Jambhlekar Pushkar Arun
M.Tech IIT Roorkee