[devkitppc/libogc/GameCube] lwIP broken
[devkitppc/libogc/GameCube] lwIP broken
lwIP is broken at the moment due to "recent" queue changes. Please fix as the BBA is not usable at all on the latest libOGC.
-
- Site Admin
- Posts: 1859
- Joined: Tue Aug 09, 2005 3:21 am
- Location: UK
- Contact:
Re: [devkitppc/libogc/GameCube] lwIP broken
Can you give us some more details of what's going wrong?
Re: [devkitppc/libogc/GameCube] lwIP broken
MQ_Send has issues in network.c, I've made these changes locally and it's working fine.
Code: Select all
@@ -666,11 +666,11 @@ static u8_t recv_raw(void *arg,struct raw_pcb *pcb,struct pbuf *p,struct ip_addr
buf->fromport = pcb->protocol;
conn->recvavail += p->tot_len;
if(conn->callback)
(*conn->callback)(conn,NETCONN_EVTRCVPLUS,p->tot_len);
- MQ_Send(conn->recvmbox,&buf,MQ_MSG_BLOCK);
+ MQ_Send(conn->recvmbox,buf,MQ_MSG_BLOCK);
}
return 0;
}
static void recv_udp(void *arg,struct udp_pcb *pcb,struct pbuf *p,struct ip_addr *addr,u16 port)
@@ -696,11 +696,11 @@ static void recv_udp(void *arg,struct udp_pcb *pcb,struct pbuf *p,struct ip_addr
conn->recvavail += p->tot_len;
if(conn->callback)
(*conn->callback)(conn,NETCONN_EVTRCVPLUS,p->tot_len);
- MQ_Send(conn->recvmbox,&buf,MQ_MSG_BLOCK);
+ MQ_Send(conn->recvmbox,buf,MQ_MSG_BLOCK);
}
}
static err_t recv_tcp(void *arg,struct tcp_pcb *pcb,struct pbuf *p,err_t err)
{
@@ -722,11 +722,11 @@ static err_t recv_tcp(void *arg,struct tcp_pcb *pcb,struct pbuf *p,err_t err)
} else len = 0;
if(conn->callback)
(*conn->callback)(conn,NETCONN_EVTRCVPLUS,len);
- MQ_Send(conn->recvmbox,&p,MQ_MSG_BLOCK);
+ MQ_Send(conn->recvmbox,p,MQ_MSG_BLOCK);
}
return ERR_OK;
}
static void err_tcp(void *arg,err_t err)
@@ -833,11 +833,11 @@ static err_t accept_func(void *arg,struct tcp_pcb *newpcb,err_t err)
}
newconn->callback = conn->callback;
newconn->socket = -1;
newconn->recvavail = 0;
- MQ_Send(mbox,&newconn,MQ_MSG_BLOCK);
+ MQ_Send(mbox,newconn,MQ_MSG_BLOCK);
return ERR_OK;
}
static void do_newconn(struct apimsg_msg *msg)
{
@@ -1259,11 +1259,11 @@ static err_t net_input(struct pbuf *p,struct netif *inp)
}
msg->type = NETMSG_INPUT;
msg->msg.inp.p = p;
msg->msg.inp.net = inp;
- MQ_Send(netthread_mbox,&msg,MQ_MSG_BLOCK);
+ MQ_Send(netthread_mbox,msg,MQ_MSG_BLOCK);
return ERR_OK;
}
static void net_apimsg(struct api_msg *apimsg)
{
@@ -1276,11 +1276,11 @@ static void net_apimsg(struct api_msg *apimsg)
return;
}
msg->type = NETMSG_API;
msg->msg.apimsg = apimsg;
- MQ_Send(netthread_mbox,&msg,MQ_MSG_BLOCK);
+ MQ_Send(netthread_mbox,msg,MQ_MSG_BLOCK);
}
static err_t net_callback(void (*f)(void *),void *ctx)
{
struct net_msg *msg = memp_malloc(MEMP_TCPIP_MSG);
@@ -1293,11 +1293,11 @@ static err_t net_callback(void (*f)(void *),void *ctx)
}
msg->type = NETMSG_CALLBACK;
msg->msg.cb.f = f;
msg->msg.cb.ctx = ctx;
- MQ_Send(netthread_mbox,&msg,MQ_MSG_BLOCK);
+ MQ_Send(netthread_mbox,msg,MQ_MSG_BLOCK);
return ERR_OK;
}
static void* net_thread(void *arg)
{
Who is online
Users browsing this forum: No registered users and 60 guests