X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=modules%2Fppp_comp.c;h=97d13ebd3bf608b624718e60ed23566f191588e3;hp=9cb77c306920536345c4cd516ada4befdcb02f77;hb=6e6bb3246106e680463c106d1ee6b773fc4f9c5a;hpb=18de18edfb0ebefef8c0e2b0686e8793bc1ba127 diff --git a/modules/ppp_comp.c b/modules/ppp_comp.c index 9cb77c3..97d13eb 100644 --- a/modules/ppp_comp.c +++ b/modules/ppp_comp.c @@ -1,30 +1,38 @@ /* * ppp_comp.c - STREAMS module for kernel-level compression and CCP support. * - * Copyright (c) 1994 The Australian National University. - * All rights reserved. + * Copyright (c) 1994 Paul Mackerras. All rights reserved. * - * Permission to use, copy, modify, and distribute this software and its - * documentation is hereby granted, provided that the above copyright - * notice appears in all copies. This software is provided without any - * warranty, express or implied. The Australian National University - * makes no representations about the suitability of this software for - * any purpose. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: * - * IN NO EVENT SHALL THE AUSTRALIAN NATIONAL UNIVERSITY BE LIABLE TO ANY - * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES - * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF - * THE AUSTRALIAN NATIONAL UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY - * OF SUCH DAMAGE. + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. * - * THE AUSTRALIAN NATIONAL UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES, - * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS - * ON AN "AS IS" BASIS, AND THE AUSTRALIAN NATIONAL UNIVERSITY HAS NO - * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, - * OR MODIFICATIONS. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. * - * $Id: ppp_comp.c,v 1.10 1999/02/26 10:52:07 paulus Exp $ + * 3. The name(s) of the authors of this software must not be used to + * endorse or promote products derived from this software without + * prior written permission. + * + * 4. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by Paul Mackerras + * ". + * + * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO + * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY + * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN + * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING + * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * $Id: ppp_comp.c,v 1.14 2002/12/06 09:49:15 paulus Exp $ */ /* @@ -106,6 +114,8 @@ struct streamtab ppp_compinfo = { &r_init, &w_init, NULL, NULL }; +int ppp_comp_count; /* number of module instances in use */ + #ifdef __osf__ static void ppp_comp_alloc __P((comp_state_t *)); @@ -200,6 +210,7 @@ MOD_OPEN(ppp_comp_open) OPEN_ERROR(ENOSR); cp->thread = thread; #endif + ++ppp_comp_count; qprocson(q); } return 0; @@ -225,6 +236,7 @@ MOD_CLOSE(ppp_comp_close) FREE(cp, sizeof(comp_state_t)); q->q_ptr = NULL; OTHERQ(q)->q_ptr = NULL; + --ppp_comp_count; } return 0; } @@ -594,7 +606,7 @@ static int ppp_comp_wsrv(q) queue_t *q; { - mblk_t *mp, *cmp = NULL, *np; + mblk_t *mp, *cmp = NULL; comp_state_t *cp; int len, proto, type, hlen, code; struct ip *ip; @@ -612,7 +624,7 @@ ppp_comp_wsrv(q) if (!bcanputnext(q,mp->b_band)) #else if (!canputnext(q)) -#endif PRIOQ +#endif /* PRIOQ */ { putbq(q, mp); break; @@ -690,7 +702,7 @@ ppp_comp_wsrv(q) if (cmp != NULL) { #ifdef PRIOQ cmp->b_band=mp->b_band; -#endif PRIOQ +#endif /* PRIOQ */ freemsg(mp); mp = cmp; }