lwip-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-devel] Removing the restriction on number of sockets


From: goldsimon
Subject: Re: [lwip-devel] Removing the restriction on number of sockets
Date: Mon, 07 Aug 2017 22:33:31 +0200
User-agent: K-9 Mail for Android

One more thing: every socket needs one netconn and one pcb, so MEMP_MEM_MALLOC = 1 would be a hood idea.

Simon


Am 7. August 2017 22:16:54 MESZ schrieb "address@hidden" <address@hidden>:
The proposal doesn't look too bad overall. However, I'm not sure using a 
linked list is the best solution. If you implement this to not have the
total number of sockets limited, a linked list might hurt...

An I wouldn't limit the "open socket count" functionality to
MEM_LIBC_MALLOC. We do have a heap which can be used for this.

Another thing you need to consider is FD_SET, which is currently
implemented as bit field.

Cheers,
Simon

Joan Lledó wrote:
I'm porting LwIP to the Hurd as my Google Summer of Code project. In
our port, we're using the sockets API but we need to remove the
restriction of having a maximum amount of sockets.

I'm looking for advice on how to do this in a way it's acceptable for
upstreaming. This is my proposal:

- Add a new lwipopts.h macro to disable the restriction
- Allow enabling that macro only if MEM_LIBC_MALLOC is enabled
- When this new macro is disabled, just use the current code with the
static array of sockets
- When this new macro is enabled
- Add new pointers to struct lwip_sock to make it a linked list
- Declare "sockets" as a pointer to struct lwip_sock pointing to the
first element in the linked list
- Use mem_alloc() to allocate new sockets
- Modify alloc_socket(), free_socket(), get_socket() and
tryget_socket() to deal with the list

What do you think?



lwip-devel mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/lwip-devel





lwip-devel mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/lwip-devel

reply via email to

[Prev in Thread] Current Thread [Next in Thread]