> The idea was to make it obvious that there is a test for NULL, which can be overlooked because one does not expect assignments in if statements. I didn't check, but maybe the coding conventions say something about doing this in the first place.
> Second, I personally prefer NULL over 0 in the case of pointers as it is more explicit.
>
> "This is C" does not apply as C does not dictate that code should be hard to read only because it allows for it.
"hard to read" - I think the assignment is easier to read this way.

"This is C" - I like the "shortcut" of not having to use "==0", and it's 
the only one of the "bigger" languages that allows this.

Would you need it in, e.g.,
```if (is_too_large(packet) == 1)) ...```
too to make it "easier to read"?