summaryrefslogtreecommitdiffstats
path: root/sys/netatm
diff options
context:
space:
mode:
Diffstat (limited to 'sys/netatm')
-rw-r--r--sys/netatm/atm_aal5.c8
-rw-r--r--sys/netatm/atm_cm.c5
-rw-r--r--sys/netatm/atm_socket.c6
-rw-r--r--sys/netatm/atm_var.h4
-rw-r--r--sys/netatm/ipatm/ipatm_load.c2
5 files changed, 15 insertions, 10 deletions
diff --git a/sys/netatm/atm_aal5.c b/sys/netatm/atm_aal5.c
index 6d625e0..2367eb9 100644
--- a/sys/netatm/atm_aal5.c
+++ b/sys/netatm/atm_aal5.c
@@ -69,7 +69,8 @@ static int atm_aal5_attach(struct socket *, int, struct thread *td);
static int atm_aal5_detach(struct socket *);
static int atm_aal5_bind(struct socket *, struct sockaddr *,
struct thread *td);
-static int atm_aal5_listen(struct socket *, struct thread *td);
+static int atm_aal5_listen(struct socket *, int backlog,
+ struct thread *td);
static int atm_aal5_connect(struct socket *, struct sockaddr *,
struct thread *td);
static int atm_aal5_accept(struct socket *, struct sockaddr **);
@@ -328,13 +329,14 @@ atm_aal5_bind(so, addr, td)
*
*/
static int
-atm_aal5_listen(so, td)
+atm_aal5_listen(so, backlog, td)
struct socket *so;
+ int backlog;
struct thread *td;
{
ATM_INTRO("listen");
- err = atm_sock_listen(so, &atm_aal5_endpt);
+ err = atm_sock_listen(so, &atm_aal5_endpt, backlog);
ATM_OUTRO();
}
diff --git a/sys/netatm/atm_cm.c b/sys/netatm/atm_cm.c
index 60bf482..12b9f53 100644
--- a/sys/netatm/atm_cm.c
+++ b/sys/netatm/atm_cm.c
@@ -536,12 +536,13 @@ done:
*
*/
int
-atm_cm_listen(so, epp, token, ap, copp)
+atm_cm_listen(so, epp, token, ap, copp, backlog)
struct socket *so;
Atm_endpoint *epp;
void *token;
Atm_attributes *ap;
Atm_connection **copp;
+ int backlog;
{
Atm_connection *cop;
int s, err = 0;
@@ -737,7 +738,7 @@ atm_cm_listen(so, epp, token, ap, copp)
cop->co_state = COS_LISTEN;
LINK2TAIL(cop, Atm_connection, atm_listen_queue, co_next);
if (so != NULL)
- solisten_proto(so);
+ solisten_proto(so, backlog);
donex:
(void) splx(s);
diff --git a/sys/netatm/atm_socket.c b/sys/netatm/atm_socket.c
index 7da8f3e..2cdab95 100644
--- a/sys/netatm/atm_socket.c
+++ b/sys/netatm/atm_socket.c
@@ -335,9 +335,10 @@ atm_sock_bind(so, addr)
*
*/
int
-atm_sock_listen(so, epp)
+atm_sock_listen(so, epp, backlog)
struct socket *so;
Atm_endpoint *epp;
+ int backlog;
{
Atm_pcb *atp = sotoatmpcb(so);
@@ -350,7 +351,8 @@ atm_sock_listen(so, epp)
/*
* Start listening for incoming calls
*/
- return (atm_cm_listen(so, epp, atp, &atp->atp_attr, &atp->atp_conn));
+ return (atm_cm_listen(so, epp, atp, &atp->atp_attr, &atp->atp_conn,
+ backlog));
}
diff --git a/sys/netatm/atm_var.h b/sys/netatm/atm_var.h
index 3332c92..4bc6d97 100644
--- a/sys/netatm/atm_var.h
+++ b/sys/netatm/atm_var.h
@@ -82,7 +82,7 @@ void atm_aal5_init(void);
int atm_cm_connect(Atm_endpoint *, void *, Atm_attributes *,
Atm_connection **);
int atm_cm_listen(struct socket *, Atm_endpoint *, void *,
- Atm_attributes *, Atm_connection **);
+ Atm_attributes *, Atm_connection **, int);
int atm_cm_addllc(Atm_endpoint *, void *, struct attr_llc *,
Atm_connection *, Atm_connection **);
int atm_cm_addparty(Atm_connection *, int, struct t_atm_sap *);
@@ -152,7 +152,7 @@ void atm_sock_init(void);
int atm_sock_attach(struct socket *, u_long, u_long);
int atm_sock_detach(struct socket *);
int atm_sock_bind(struct socket *, struct sockaddr *);
-int atm_sock_listen(struct socket *, Atm_endpoint *);
+int atm_sock_listen(struct socket *, Atm_endpoint *, int);
int atm_sock_connect(struct socket *, struct sockaddr *,
Atm_endpoint *);
int atm_sock_disconnect(struct socket *);
diff --git a/sys/netatm/ipatm/ipatm_load.c b/sys/netatm/ipatm/ipatm_load.c
index 2e931cd..4376b66 100644
--- a/sys/netatm/ipatm/ipatm_load.c
+++ b/sys/netatm/ipatm/ipatm_load.c
@@ -524,7 +524,7 @@ ipatm_start()
*/
if ((err = atm_cm_listen(NULL, &ipatm_endpt,
(void *)(intptr_t)i, &ipatm_listeners[i].attr,
- &ipatm_listeners[i].conn)) != 0)
+ &ipatm_listeners[i].conn, -1)) != 0)
goto done;
}
OpenPOWER on IntegriCloud