Date: Sun, 9 Apr 1995 15:40:20 +0300 From: "Timo J. Rinne" <tri@pooh.tky.hut.fi> To: freebsd-ports@FreeBSD.org Subject: pidentd broken with new kernel Message-ID: <199504091240.PAA17501@pooh.tky.hut.fi>
next in thread | raw e-mail | index | archive | help
System dependant part of Pidentd seems to be broken. I hacked it a bit and got it working. This fix propably is not right, but... >>>>>>>>>>>>>>>>>> C U T H E R E >>>>>>>>>>>>>>>>>> *** freebsd.c.orig Fri Oct 21 02:07:37 1994 --- freebsd.c Sun Apr 9 15:26:00 1995 *************** *** 1,5 **** /* ! ** kernel/other.c Low level kernel access functions for FreeBSD 2.x ** ** This program is in the public domain and may be used freely by anyone ** who wants to. --- 1,5 ---- /* ! ** kernel/other.c Low level kernel access functions for FreeBSD 2.1 ** ** This program is in the public domain and may be used freely by anyone ** who wants to. *************** *** 77,82 **** --- 77,83 ---- static int nfile; static struct inpcb tcb; + static struct intcb *dummy_tcb; int k_open() { *************** *** 140,146 **** return NULL; ! head = pcbp->inp_prev; do { if ( pcbp->inp_faddr.s_addr == faddr->s_addr && --- 141,147 ---- return NULL; ! head = *(pcbp->inp_list.le_prev); do { if ( pcbp->inp_faddr.s_addr == faddr->s_addr && *************** *** 148,155 **** pcbp->inp_fport == fport && pcbp->inp_lport == lport ) return pcbp->inp_socket; ! } while (pcbp->inp_next != head && ! getbuf((long) pcbp->inp_next, pcbp, sizeof(struct inpcb), "tcblist")); --- 149,156 ---- pcbp->inp_fport == fport && pcbp->inp_lport == lport ) return pcbp->inp_socket; ! } while (pcbp->inp_list.le_next != head && ! getbuf((long) pcbp->inp_list.le_next, pcbp, sizeof(struct inpcb), "tcblist")); *************** *** 185,192 **** /* -------------------- TCP PCB LIST -------------------- */ if (!getbuf(nl[N_TCB].n_value, &tcb, sizeof(tcb), "tcb")) return -1; ! ! tcb.inp_prev = (struct inpcb *) nl[N_TCB].n_value; sockp = getlist(&tcb, faddr, fport, laddr, lport); if (!sockp) --- 186,193 ---- /* -------------------- TCP PCB LIST -------------------- */ if (!getbuf(nl[N_TCB].n_value, &tcb, sizeof(tcb), "tcb")) return -1; ! dummy_tcb = ((struct inpcb *) nl[N_TCB].n_value); ! tcb.inp_list.le_prev = &dummy_tcb; sockp = getlist(&tcb, faddr, fport, laddr, lport); if (!sockp) >>>>>>>>>>>>>>>>>> C U T H E R E >>>>>>>>>>>>>>>>>>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199504091240.PAA17501>