Nathan,
I think this is actually deliberate. The return value of an assignment operation is always going to be true, so it's just an "overly clever" way of compactly setting the value of 'ret' to -2 within the same conditional evaluation.
The aim there is compactness, though it does obscure readability, and should probably be refactored into:
if(ptr && !(VALID_CONTACT(ptr,act_time) && allowed_method(_m,ptr))) { ret = -2; goto done; }
Sometimes programmers like to do things like this because variety is the spice of life, but certainly, they are likely to elicit bewilderment in others. :-)
-- Alex