In article <[EMAIL PROTECTED]>,
Dinesh Nambisan  <[EMAIL PROTECTED]> wrote:
> Hello,
>  I have a situation where I'm trying to set the send and receive buffer
> sizes on a socket to large values like 1 MB or so (dont ask why :-),
> simple reason being we need it); and setsockopt for setting the buffer
> sizes seems to fail with ENOBUFS. On looking at the code in uipc_socket.c
> where it handles the SO_SNDBUF & SO_RCVBUF options, and the code in
> uipc_socket2.c where it actually tries to reserve space (in sbreserve
> function_, the issue seems to be a limit imposed by the code to
> approx 227K or so [ sb_max(=256) * MCLBYTES / (MSIZE + MCLBYTES) ; which
> works out to approx 227 K on my platform]
> Was wondering if anyone could explain as to why this limit is there ?

It's probably there to prevent a hostile or broken process from
consuming all of the mbufs and/or mbuf clusters.

You can change the limit via the sysctl variable "kern.ipc.maxsockbuf".

John
-- 
  John Polstra
  John D. Polstra & Co., Inc.                        Seattle, Washington USA
  "Disappointment is a good sign of basic intelligence."  -- Chögyam Trungpa


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-net" in the body of the message

Reply via email to