On 14 December 2011 04:31, Kieran Mansley <[email protected]> wrote:
>
> On 11 Dec 2011, at 14:17, narke wrote:
>
>> Hi,
>>
>> In raw API.  I am confused how to enable the tcp KEEP-ALIVE feature.
>> It's seems the LWIP_TCP_KEEPALIVE switch is not designed for turning
>> on or off the feature. It's just for using or not using "keep_intvl"
>> and "keep_cnt" fields of a pcb.   To my understanding, turning on or
>> off the LWIP_TCP_KEEPALIVE switch, makes no difference to the final
>> result.
>>
>> And, according to the 1.4.0 code, the keep-alive segments will be sent
>> out only if the so_options of a pcb has a SOF_KEEPALIVE bit set.  The
>> problem is, I don't find a place in the code that SOF_KEEPALIVE (or
>> SO_KEEPALIVE) was set.
>
> It's part of the sockets API so there isn't a supported way to set it via the 
> raw API,  but you can probably get what you want by doing
>
> pcb->so_options |= SOF_KEEPALIVE;
>
> In general modifying pcb fields directly is discouraged but in this case 
> there isn't an easy alternative.  We should probably add a function to allow 
> users to set these options in a supported manner.
>
> Kieran


Thanks Kieran. I just had already found my way and did it exactly as
what you said.

-- 
Life is the only flaw in an otherwise perfect nonexistence
    -- Schopenhauer

narke
public key at http://subkeys.pgp.net:11371 ([email protected])

_______________________________________________
lwip-users mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to