taglinefilesource code
ppp84drivers/net/ppp.c#define CHECK_PPP(a)  if (!ppp->inuse) { PRINTK ((ppp_warning, __LINE__)) return a;}
ppp85drivers/net/ppp.c#define CHECK_PPP_VOID()  if (!ppp->inuse) { PRINTK ((ppp_warning, __LINE__)) return;}
ppp87drivers/net/ppp.c#define in_xmap(ppp,c)  (ppp->xmit_async_map[(c) >> 5] & (1 << ((c) & 0x1f)))
ppp88drivers/net/ppp.c#define in_rmap(ppp,c)  ((((unsigned int) (unsigned char) (c)) < 0x20) && \
ppp89drivers/net/ppp.cppp->recv_async_map & (1 << (c)))
ppp100drivers/net/ppp.cstatic void ppp_init_ctrl_blk(struct ppp *);
ppp104drivers/net/ppp.cstatic void ppp_kick_tty(struct ppp *);
ppp107drivers/net/ppp.c#define ppp_find(tty) ((struct ppp *) tty->disc_data)
ppp110drivers/net/ppp.cstatic void ppp_unesc(struct ppp *ppp, unsigned char *c, int n);
ppp111drivers/net/ppp.cstatic struct ppp *ppp_find(struct tty_struct *);
ppp114drivers/net/ppp.cstatic void ppp_doframe(struct ppp *);
ppp115drivers/net/ppp.cstatic int ppp_do_ip(struct ppp *, unsigned short, unsigned char *, int);
ppp116drivers/net/ppp.cstatic int ppp_us_queue(struct ppp *, unsigned short, unsigned char *, int);
ppp134drivers/net/ppp.cstatic struct ppp *ppp_alloc(void);
ppp135drivers/net/ppp.cstatic int ppp_lock(struct ppp *);
ppp136drivers/net/ppp.cstatic void ppp_unlock(struct ppp *);
ppp137drivers/net/ppp.cstatic void ppp_add_fcs(struct ppp *);
ppp138drivers/net/ppp.cstatic int ppp_check_fcs(struct ppp *);
ppp200drivers/net/ppp.cstatic struct ppp ppp_ctrl[PPP_NRUNIT];
ppp213drivers/net/ppp.cstruct ppp *ppp;
ppp216drivers/net/ppp.cppp = &ppp_ctrl[dev->base_addr];
ppp261drivers/net/ppp.cppp_init_ctrl_blk (ppp);
ppp262drivers/net/ppp.cppp->inuse = 0;
ppp263drivers/net/ppp.cppp->line  = dev->base_addr;
ppp264drivers/net/ppp.cppp->tty   = NULL;
ppp265drivers/net/ppp.cppp->dev   = dev;
ppp268drivers/net/ppp.cmemset (&ppp->stats, '\0', sizeof (struct ppp_stats));
ppp304drivers/net/ppp.cppp_init_ctrl_blk(struct ppp *ppp)
ppp306drivers/net/ppp.cppp->magic    = PPP_MAGIC;
ppp307drivers/net/ppp.cppp->sending    = 0;
ppp308drivers/net/ppp.cppp->toss    = 0xFE;
ppp309drivers/net/ppp.cppp->escape    = 0;
ppp311drivers/net/ppp.cppp->flags    = 0;
ppp312drivers/net/ppp.cppp->mtu    = PPP_MTU;
ppp313drivers/net/ppp.cppp->mru    = PPP_MRU;
ppp314drivers/net/ppp.cppp->fcs    = 0;
ppp316drivers/net/ppp.cmemset (ppp->xmit_async_map, 0, sizeof (ppp->xmit_async_map));
ppp317drivers/net/ppp.cppp->xmit_async_map[0] = 0xffffffff;
ppp318drivers/net/ppp.cppp->xmit_async_map[3] = 0x60000000;
ppp319drivers/net/ppp.cppp->recv_async_map   = 0x00000000;
ppp321drivers/net/ppp.cppp->slcomp    = NULL;
ppp322drivers/net/ppp.cppp->rbuff    = NULL;
ppp323drivers/net/ppp.cppp->xbuff    = NULL;
ppp324drivers/net/ppp.cppp->cbuff    = NULL;
ppp326drivers/net/ppp.cppp->rhead    = NULL;
ppp327drivers/net/ppp.cppp->rend    = NULL;
ppp328drivers/net/ppp.cppp->rcount    = 0;
ppp329drivers/net/ppp.cppp->xhead    = NULL;
ppp330drivers/net/ppp.cppp->xtail    = NULL;
ppp332drivers/net/ppp.cppp->us_rbuff    = NULL;
ppp333drivers/net/ppp.cppp->us_rbuff_end  = NULL;
ppp334drivers/net/ppp.cppp->us_rbuff_head  = NULL;
ppp335drivers/net/ppp.cppp->us_rbuff_tail  = NULL;
ppp336drivers/net/ppp.cppp->read_wait  = NULL;
ppp337drivers/net/ppp.cppp->write_wait  = NULL;
ppp338drivers/net/ppp.cppp->us_rbuff_lock  = 0;
ppp339drivers/net/ppp.cppp->inp_sig    = 0;
ppp340drivers/net/ppp.cppp->inp_sig_pid  = 0;
ppp343drivers/net/ppp.cppp->last_xmit  = jiffies - OPTIMIZE_FLAG_TIME;
ppp345drivers/net/ppp.cppp->last_xmit  = 0;
ppp349drivers/net/ppp.cmemset (&ppp->stats, '\0', sizeof (struct ppp_stats));
ppp352drivers/net/ppp.cppp->ddinfo.ip_sjiffies  =
ppp353drivers/net/ppp.cppp->ddinfo.ip_rjiffies  =
ppp354drivers/net/ppp.cppp->ddinfo.nip_sjiffies =
ppp355drivers/net/ppp.cppp->ddinfo.nip_rjiffies = jiffies;
ppp365drivers/net/ppp.cppp_changedmtu (struct ppp *ppp, int new_mtu, int new_mru)
ppp374drivers/net/ppp.cdev = ppp->dev;
ppp415drivers/net/ppp.cold_xbuff       = ppp->xbuff;
ppp416drivers/net/ppp.cold_rbuff       = ppp->rbuff;
ppp417drivers/net/ppp.cold_cbuff       = ppp->cbuff;
ppp419drivers/net/ppp.cppp->xbuff      = new_xbuff;
ppp420drivers/net/ppp.cppp->rbuff      = new_rbuff;
ppp421drivers/net/ppp.cppp->cbuff      = new_cbuff;
ppp427drivers/net/ppp.cppp->rend       = (unsigned char *)
ppp430drivers/net/ppp.cppp->rhead      = new_rbuff;
ppp434drivers/net/ppp.cppp->toss    = 0xFE;
ppp435drivers/net/ppp.cppp->escape  = 0;
ppp436drivers/net/ppp.cppp->sending  = 0;
ppp437drivers/net/ppp.cppp->rcount  = 0;
ppp439drivers/net/ppp.cppp->mru    = new_mru;
ppp441drivers/net/ppp.cppp->mtu    =
ppp462drivers/net/ppp.cppp_release(struct ppp *ppp)
ppp465drivers/net/ppp.cif (ppp->tty != NULL && ppp->tty->disc_data == ppp)
ppp466drivers/net/ppp.cppp->tty->disc_data = NULL; /* Break the tty->ppp link */
ppp469drivers/net/ppp.cif (ppp->dev) {
ppp470drivers/net/ppp.cdev_close (ppp->dev);
ppp471drivers/net/ppp.cppp->dev->flags = 0;
ppp474drivers/net/ppp.ckfree (ppp->xbuff);
ppp475drivers/net/ppp.ckfree (ppp->cbuff);
ppp476drivers/net/ppp.ckfree (ppp->rbuff);
ppp477drivers/net/ppp.ckfree (ppp->us_rbuff);
ppp479drivers/net/ppp.cppp->xbuff    =
ppp480drivers/net/ppp.cppp->cbuff    =
ppp481drivers/net/ppp.cppp->rbuff    =
ppp482drivers/net/ppp.cppp->us_rbuff = NULL;
ppp484drivers/net/ppp.cif (ppp->slcomp) {
ppp485drivers/net/ppp.cslhc_free(ppp->slcomp);
ppp486drivers/net/ppp.cppp->slcomp = NULL;
ppp489drivers/net/ppp.cppp->inuse = 0;
ppp490drivers/net/ppp.cppp->tty   = NULL;
ppp496drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp498drivers/net/ppp.cif (ppp == NULL || ppp->magic != PPP_MAGIC) {
ppp502drivers/net/ppp.cppp_release (ppp);
ppp504drivers/net/ppp.cPRINTKN (2,(KERN_INFO "ppp: channel %s closing.\n", ppp->dev->name));
ppp515drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp517drivers/net/ppp.cif (ppp) {
ppp519drivers/net/ppp.cppp->magic == PPP_MAGIC ? ppp->dev->name : "unknown"));
ppp523drivers/net/ppp.cppp = ppp_alloc();
ppp524drivers/net/ppp.cif (ppp == NULL) {
ppp530drivers/net/ppp.cppp_init_ctrl_blk (ppp);
ppp532drivers/net/ppp.cppp->tty = tty;
ppp535drivers/net/ppp.ctty->disc_data = ppp;
ppp545drivers/net/ppp.cif ((ppp->slcomp = slhc_init(16, 16)) == NULL) {
ppp547drivers/net/ppp.cppp_release (ppp);
ppp552drivers/net/ppp.cppp_changedmtu (ppp, ppp->dev->mtu, ppp->mru);
ppp553drivers/net/ppp.cif (ppp->rbuff == NULL) {
ppp554drivers/net/ppp.cppp_release (ppp);
ppp559drivers/net/ppp.cppp->us_rbuff = (unsigned char *) kmalloc (RBUFSIZE, GFP_KERNEL);
ppp560drivers/net/ppp.cif (ppp->us_rbuff == NULL) {
ppp562drivers/net/ppp.cppp_release (ppp);
ppp566drivers/net/ppp.cppp->us_rbuff_head =
ppp567drivers/net/ppp.cppp->us_rbuff_tail = ppp->us_rbuff;
ppp568drivers/net/ppp.cppp->us_rbuff_end  = ppp->us_rbuff + RBUFSIZE;
ppp570drivers/net/ppp.cPRINTKN (2,(KERN_INFO "ppp: channel %s open\n", ppp->dev->name));
ppp576drivers/net/ppp.creturn (ppp->line);
ppp584drivers/net/ppp.cstruct ppp *ppp = &ppp_ctrl[dev->base_addr];
ppp589drivers/net/ppp.cif (ppp->tty == NULL) {
ppp605drivers/net/ppp.cstruct ppp *ppp = &ppp_ctrl[dev->base_addr];
ppp607drivers/net/ppp.cif (ppp->tty == NULL) {
ppp622drivers/net/ppp.cstruct ppp *ppp = &ppp_ctrl[dev->base_addr];
ppp638drivers/net/ppp.cmemcpy_tofs (&result->ppp_stats, &ppp->stats, sizeof (struct ppp_stats));
ppp639drivers/net/ppp.cif (ppp->slcomp)
ppp640drivers/net/ppp.cmemcpy_tofs (&result->slhc,    ppp->slcomp, sizeof (struct slcompress));
ppp658drivers/net/ppp.cppp_output_done (void *ppp)
ppp661drivers/net/ppp.cppp_unlock ((struct ppp *) ppp);
ppp665drivers/net/ppp.cif (((struct ppp *) ppp)->dev->flags & IFF_UP)
ppp669drivers/net/ppp.cdev_tint (((struct ppp *) ppp)->dev);
ppp673drivers/net/ppp.cwake_up_interruptible (&((struct ppp *) ppp)->write_wait);
ppp678drivers/net/ppp.cppp_kick_tty (struct ppp *ppp)
ppp680drivers/net/ppp.cregister int count = ppp->xhead - ppp->xbuff;
ppp683drivers/net/ppp.cppp->stats.sbytes += count;
ppp685drivers/net/ppp.canswer = tty_write_data (ppp->tty,
ppp686drivers/net/ppp.cppp->xbuff,
ppp689drivers/net/ppp.c(void *) ppp);
ppp692drivers/net/ppp.cppp_output_done (ppp);   /* Should not happen */
ppp695drivers/net/ppp.cppp->stats.serrors++;
ppp696drivers/net/ppp.cppp_output_done (ppp); /* unlock the transmitter */
ppp703drivers/net/ppp.cppp_kick_tty (struct ppp *ppp)
ppp707drivers/net/ppp.ccount = ppp->xhead - ppp->xbuff;
ppp709drivers/net/ppp.cactual = ppp->tty->driver.write(ppp->tty, 0, ppp->xbuff, count);
ppp710drivers/net/ppp.cppp->stats.sbytes += actual;
ppp712drivers/net/ppp.cppp_output_done(ppp);
ppp714drivers/net/ppp.cppp->xtail = ppp->xbuff + actual;
ppp715drivers/net/ppp.cppp->tty->flags |= (1 << TTY_DO_WRITE_WAKEUP);
ppp722drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp724drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp731drivers/net/ppp.cif (!ppp->xtail)
ppp735drivers/net/ppp.cif (ppp->flags & SC_XMIT_BUSY) {
ppp739drivers/net/ppp.cppp->flags |= SC_XMIT_BUSY;
ppp742drivers/net/ppp.ccount = ppp->xhead - ppp->xtail;
ppp744drivers/net/ppp.cactual = tty->driver.write(tty, 0, ppp->xtail, count);
ppp745drivers/net/ppp.cppp->stats.sbytes += actual;
ppp747drivers/net/ppp.cppp->xtail = 0;
ppp750drivers/net/ppp.cppp_output_done(ppp);
ppp752drivers/net/ppp.cppp->xtail += actual;
ppp754drivers/net/ppp.cppp->flags &= ~SC_XMIT_BUSY;
ppp769drivers/net/ppp.cppp_enqueue(struct ppp *ppp, unsigned char c)
ppp775drivers/net/ppp.cif (ppp->rhead < ppp->rend) {
ppp776drivers/net/ppp.c*ppp->rhead = c;
ppp777drivers/net/ppp.cppp->rhead++;
ppp778drivers/net/ppp.cppp->rcount++;
ppp780drivers/net/ppp.cppp->stats.roverrun++;
ppp822drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp827drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp837drivers/net/ppp.cppp_dump_inqueue(ppp->tty);
ppp853drivers/net/ppp.cppp->stats.rbytes += n;
ppp854drivers/net/ppp.cppp_unesc(ppp,buff,n);
ppp856drivers/net/ppp.cppp->toss = error;
ppp866drivers/net/ppp.cppp_unesc(struct ppp *ppp, unsigned char *c, int n)
ppp887drivers/net/ppp.cppp->escape = PPP_TRANS;
ppp891drivers/net/ppp.cif (ppp->escape)    /* PPP_ESC just before PPP_FLAG is illegal */
ppp892drivers/net/ppp.cppp->toss = 0xFF;
ppp894drivers/net/ppp.cif ((ppp->toss & 0x80) == 0)
ppp895drivers/net/ppp.cppp_doframe(ppp);  /* pass frame on to next layers */
ppp897drivers/net/ppp.cppp->rcount = 0;
ppp898drivers/net/ppp.cppp->rhead  = ppp->rbuff;
ppp899drivers/net/ppp.cppp->escape = 0;
ppp900drivers/net/ppp.cppp->toss   = 0;
ppp904drivers/net/ppp.cif (!in_rmap (ppp, *c)) {
ppp905drivers/net/ppp.cif (ppp->toss == 0)
ppp906drivers/net/ppp.cppp_enqueue (ppp, *c ^ ppp->escape);
ppp907drivers/net/ppp.cppp->escape = 0;
ppp924drivers/net/ppp.cregister struct ppp *ppp = ppp_find (tty);
ppp929drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp941drivers/net/ppp.cppp->stats.rbytes += count;
ppp947drivers/net/ppp.cif (*fp && ppp->toss == 0)
ppp948drivers/net/ppp.cppp->toss = *fp;
ppp954drivers/net/ppp.cppp->flags |= SC_RCV_B7_1;
ppp956drivers/net/ppp.cppp->flags |= SC_RCV_B7_0;
ppp959drivers/net/ppp.cppp->flags |= SC_RCV_ODDP;
ppp961drivers/net/ppp.cppp->flags |= SC_RCV_EVNP;
ppp966drivers/net/ppp.cppp->escape = PPP_TRANS;
ppp970drivers/net/ppp.cif (ppp->escape)    /* PPP_ESC just before PPP_FLAG is "cancel"*/
ppp971drivers/net/ppp.cppp->toss = 0xFF;
ppp973drivers/net/ppp.cif ((ppp->toss & 0x80) == 0)
ppp974drivers/net/ppp.cppp_doframe(ppp);  /* pass frame on to next layers */
ppp976drivers/net/ppp.cppp->rcount = 0;
ppp977drivers/net/ppp.cppp->rhead  = ppp->rbuff;
ppp978drivers/net/ppp.cppp->escape = 0;
ppp979drivers/net/ppp.cppp->toss   = 0;
ppp983drivers/net/ppp.cif (!in_rmap (ppp, c)) {
ppp984drivers/net/ppp.cif (ppp->toss == 0)
ppp985drivers/net/ppp.cppp_enqueue (ppp, c ^ ppp->escape);
ppp986drivers/net/ppp.cppp->escape = 0;
ppp996drivers/net/ppp.cppp_doframe(struct ppp *ppp)
ppp998drivers/net/ppp.cu_char *c = ppp->rbuff;
ppp1000drivers/net/ppp.cint count = ppp->rcount;
ppp1003drivers/net/ppp.cif (ppp->toss) {
ppp1005drivers/net/ppp.cppp->toss));
ppp1006drivers/net/ppp.cslhc_toss (ppp->slcomp);
ppp1007drivers/net/ppp.cppp->stats.rerrors++;
ppp1020drivers/net/ppp.cslhc_toss (ppp->slcomp);
ppp1021drivers/net/ppp.cppp->stats.runts++;
ppp1026drivers/net/ppp.cif (!ppp_check_fcs(ppp)) {
ppp1028drivers/net/ppp.cslhc_toss (ppp->slcomp);
ppp1029drivers/net/ppp.cppp->stats.rerrors++;
ppp1051drivers/net/ppp.cif ((ppp->dev->flags & IFF_UP) && ppp_do_ip(ppp, proto, c, count)) {
ppp1052drivers/net/ppp.cppp->ddinfo.ip_rjiffies = jiffies;
ppp1062drivers/net/ppp.cif (ppp_us_queue (ppp, proto, c, count+2)) {
ppp1063drivers/net/ppp.cppp->ddinfo.nip_rjiffies = jiffies;
ppp1064drivers/net/ppp.cppp->stats.rothers++;
ppp1071drivers/net/ppp.cslhc_toss (ppp->slcomp);
ppp1072drivers/net/ppp.cppp->stats.tossed++;
ppp1080drivers/net/ppp.cppp_do_ip (struct ppp *ppp, unsigned short proto, unsigned char *c,
ppp1090drivers/net/ppp.cPRINTK (("KERN_DEBUG %s <-- proto %x len %d\n", ppp->dev->name,
ppp1095drivers/net/ppp.cppp->stats.runcomp++;
ppp1099drivers/net/ppp.cif ((proto == PROTO_VJCOMP) && !(ppp->flags & SC_REJ_COMP_TCP)) {
ppp1104drivers/net/ppp.cif ((ppp->rhead + 80) < ppp->rend) {
ppp1105drivers/net/ppp.cppp->rhead += 80;
ppp1106drivers/net/ppp.cppp->rcount += 80;
ppp1114drivers/net/ppp.cppp->stats.roverrun++;
ppp1115drivers/net/ppp.cslhc_toss (ppp->slcomp);
ppp1119drivers/net/ppp.ccount = slhc_uncompress(ppp->slcomp, c, count);
ppp1121drivers/net/ppp.cppp->stats.rerrors++;
ppp1123drivers/net/ppp.cslhc_toss (ppp->slcomp);
ppp1126drivers/net/ppp.cppp->stats.rcomp++;
ppp1130drivers/net/ppp.cif ((proto == PROTO_VJUNCOMP) && !(ppp->flags & SC_REJ_COMP_TCP)) {
ppp1131drivers/net/ppp.cif (slhc_remember(ppp->slcomp, c, count) <= 0) {
ppp1132drivers/net/ppp.cppp->stats.rerrors++;
ppp1134drivers/net/ppp.cslhc_toss (ppp->slcomp);
ppp1137drivers/net/ppp.cppp->stats.runcomp++;
ppp1147drivers/net/ppp.cPRINTK ((KERN_INFO "%s <--    src %x dst %x len %d\n", ppp->dev->name, 
ppp1159drivers/net/ppp.cskb->dev=ppp->dev;
ppp1168drivers/net/ppp.c#define PUTC(c,label) *ppp->us_rbuff_head++ = c; \
ppp1169drivers/net/ppp.cif (ppp->us_rbuff_head == ppp->us_rbuff_end) \
ppp1170drivers/net/ppp.cppp->us_rbuff_head = ppp->us_rbuff; \
ppp1171drivers/net/ppp.cif (ppp->us_rbuff_head == ppp->us_rbuff_tail) \
ppp1173drivers/net/ppp.c#define GETC(c) c = *ppp->us_rbuff_tail++; \
ppp1174drivers/net/ppp.cif (ppp->us_rbuff_tail == ppp->us_rbuff_end) \
ppp1175drivers/net/ppp.cppp->us_rbuff_tail = ppp->us_rbuff;
ppp1178drivers/net/ppp.cppp_us_queue(struct ppp *ppp, unsigned short proto, 
ppp1186drivers/net/ppp.cif (set_bit(1, &ppp->us_rbuff_lock)) {
ppp1190drivers/net/ppp.csaved_head = ppp->us_rbuff_head;
ppp1202drivers/net/ppp.cclear_bit(1, &ppp->us_rbuff_lock);
ppp1203drivers/net/ppp.cwake_up_interruptible (&ppp->read_wait);
ppp1206drivers/net/ppp.ckill_fasync(ppp->tty->fasync, SIGIO);
ppp1209drivers/net/ppp.cif (ppp->inp_sig && ppp->inp_sig_pid)
ppp1210drivers/net/ppp.cif (kill_proc (ppp->inp_sig_pid, ppp->inp_sig, 1) != 0) {
ppp1214drivers/net/ppp.cppp->inp_sig = 0;
ppp1215drivers/net/ppp.cppp->inp_sig_pid = 0;
ppp1220drivers/net/ppp.cppp->us_rbuff_head = saved_head;
ppp1221drivers/net/ppp.cclear_bit(1, &ppp->us_rbuff_lock);
ppp1243drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp1247drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp1259drivers/net/ppp.cif (set_bit(0, &ppp->us_rbuff_lock) == 0) {
ppp1261drivers/net/ppp.cif (ppp->us_rbuff_head == ppp->us_rbuff_tail) {
ppp1264drivers/net/ppp.cclear_bit(0, &ppp->us_rbuff_lock);
ppp1265drivers/net/ppp.cif (ppp->inp_sig) {
ppp1273drivers/net/ppp.cppp->us_rbuff_lock = 0;
ppp1278drivers/net/ppp.cppp->ddinfo.nip_rjiffies = jiffies;
ppp1289drivers/net/ppp.cppp->us_rbuff_head += len;
ppp1290drivers/net/ppp.cif (ppp->us_rbuff_head > ppp->us_rbuff_end)
ppp1291drivers/net/ppp.cppp->us_rbuff_head += - (ppp->us_rbuff_end - ppp->us_rbuff);
ppp1292drivers/net/ppp.cclear_bit(0, &ppp->us_rbuff_lock);
ppp1293drivers/net/ppp.cwake_up_interruptible (&ppp->read_wait);
ppp1294drivers/net/ppp.cppp->stats.rgiants++;
ppp1307drivers/net/ppp.cclear_bit(0, &ppp->us_rbuff_lock);
ppp1309drivers/net/ppp.cppp->stats.rothers++;
ppp1317drivers/net/ppp.cinterruptible_sleep_on (&ppp->read_wait);
ppp1320drivers/net/ppp.cppp = ppp_find(tty);
ppp1321drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC || !ppp->inuse)
ppp1333drivers/net/ppp.cppp_stuff_char(struct ppp *ppp, unsigned char c)
ppp1335drivers/net/ppp.cint curpt = ppp->xhead - ppp->xbuff;
ppp1338drivers/net/ppp.cppp->xbuff, ppp->xhead, curpt))
ppp1340drivers/net/ppp.cif (in_xmap (ppp, c)) {
ppp1341drivers/net/ppp.c*ppp->xhead++ = PPP_ESC;
ppp1342drivers/net/ppp.c*ppp->xhead++ = c ^ PPP_TRANS;
ppp1344drivers/net/ppp.c*ppp->xhead++ = c;
ppp1345drivers/net/ppp.cppp->fcs = (ppp->fcs >> 8) ^ fcstab[(ppp->fcs ^ c) & 0xff];
ppp1355drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp1358drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp1365drivers/net/ppp.cif (ppp->mtu != ppp->dev->mtu)  /* Someone has been ifconfigging */
ppp1366drivers/net/ppp.cppp_changedmtu (ppp, ppp->dev->mtu, ppp->mru);
ppp1368drivers/net/ppp.cif (nr > ppp->mtu) {
ppp1371drivers/net/ppp.cnr, ppp->mtu));
ppp1372drivers/net/ppp.cnr = ppp->mtu;
ppp1384drivers/net/ppp.cwhile ((ppp->sending == 1) || !ppp_lock(ppp)) {
ppp1387drivers/net/ppp.cinterruptible_sleep_on(&ppp->write_wait);
ppp1390drivers/net/ppp.cppp = ppp_find(tty);
ppp1391drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC || !ppp->inuse)
ppp1401drivers/net/ppp.cppp->xhead = ppp->xbuff;
ppp1404drivers/net/ppp.cif (jiffies - ppp->last_xmit > OPTIMIZE_FLAG_TIME)
ppp1405drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1406drivers/net/ppp.cppp->last_xmit = jiffies;
ppp1408drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1411drivers/net/ppp.cppp->fcs = PPP_FCS_INIT;
ppp1414drivers/net/ppp.cppp_stuff_char(ppp,get_user(buf++));
ppp1416drivers/net/ppp.cppp_add_fcs(ppp);    /* concatenate FCS at end */
ppp1418drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1421drivers/net/ppp.cppp->ddinfo.nip_sjiffies = jiffies;
ppp1424drivers/net/ppp.cppp_print_buffer ("xmit buffer", ppp->xbuff, ppp->xhead - ppp->xbuff, KERNEL_DS);
ppp1427drivers/net/ppp.c(int) (ppp->xhead - ppp->xbuff)));
ppp1431drivers/net/ppp.c++ppp->stats.sothers;
ppp1432drivers/net/ppp.cppp_kick_tty(ppp);
ppp1441drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp1445drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp1462drivers/net/ppp.cif (ppp->mru != temp_i)
ppp1463drivers/net/ppp.cppp_changedmtu (ppp, ppp->dev->mtu, temp_i);
ppp1470drivers/net/ppp.ctemp_i = (ppp->flags & SC_MASK);
ppp1485drivers/net/ppp.cppp->flags ^= ((ppp->flags ^ temp_i) & SC_MASK);
ppp1493drivers/net/ppp.cput_user (ppp->xmit_async_map[0], (int *) l);
ppp1495drivers/net/ppp.cl, (unsigned long) ppp->xmit_async_map[0]));
ppp1502drivers/net/ppp.cppp->xmit_async_map[0] = get_user ((int *) l);
ppp1503drivers/net/ppp.cbset (ppp->xmit_async_map, PPP_FLAG);
ppp1504drivers/net/ppp.cbset (ppp->xmit_async_map, PPP_ESC);
ppp1506drivers/net/ppp.c(unsigned long) ppp->xmit_async_map[0]));
ppp1513drivers/net/ppp.cppp->recv_async_map = get_user ((int *) l);
ppp1515drivers/net/ppp.c(unsigned long) ppp->recv_async_map));
ppp1522drivers/net/ppp.cput_user (ppp->dev->base_addr, (int *) l);
ppp1523drivers/net/ppp.cPRINTKN (3,(KERN_INFO "ppp_ioctl: get unit: %ld", ppp->dev->base_addr));
ppp1530drivers/net/ppp.cppp->inp_sig     = get_user ((int *) l);
ppp1531drivers/net/ppp.cppp->inp_sig_pid = current->pid;
ppp1532drivers/net/ppp.cPRINTKN (3,(KERN_INFO "ppp_ioctl: set input signal %d\n", ppp->inp_sig));
ppp1559drivers/net/ppp.cmemcpy_tofs ((void *) l, &ppp->stats, sizeof (struct ppp_stats));
ppp1571drivers/net/ppp.ccur_ddinfo.ip_sjiffies  = cur_jiffies - ppp->ddinfo.ip_sjiffies;
ppp1572drivers/net/ppp.ccur_ddinfo.ip_rjiffies  = cur_jiffies - ppp->ddinfo.ip_rjiffies;
ppp1573drivers/net/ppp.ccur_ddinfo.nip_sjiffies = cur_jiffies - ppp->ddinfo.nip_sjiffies;
ppp1574drivers/net/ppp.ccur_ddinfo.nip_rjiffies = cur_jiffies - ppp->ddinfo.nip_rjiffies;
ppp1584drivers/net/ppp.csizeof (ppp->xmit_async_map));
ppp1587drivers/net/ppp.cppp->xmit_async_map,
ppp1588drivers/net/ppp.csizeof (ppp->xmit_async_map));
ppp1595drivers/net/ppp.csizeof (ppp->xmit_async_map));
ppp1599drivers/net/ppp.cmemcpy_fromfs (temp_tbl, (void *) l, sizeof (ppp->xmit_async_map));
ppp1609drivers/net/ppp.cmemcpy (ppp->xmit_async_map, temp_tbl, sizeof (ppp->xmit_async_map));
ppp1620drivers/net/ppp.cif (ppp->slcomp != NULL)
ppp1621drivers/net/ppp.cslhc_free (ppp->slcomp);
ppp1623drivers/net/ppp.cppp->slcomp = slhc_init (temp_i, temp_i);
ppp1625drivers/net/ppp.cif (ppp->slcomp == NULL) {
ppp1627drivers/net/ppp.cppp_release (ppp);
ppp1663drivers/net/ppp.cstruct ppp *ppp = ppp_find (tty);
ppp1665drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp1676drivers/net/ppp.cif (set_bit(0, &ppp->us_rbuff_lock) == 0) {
ppp1678drivers/net/ppp.cif (ppp->us_rbuff_head != ppp->us_rbuff_tail) {
ppp1679drivers/net/ppp.cclear_bit (0, &ppp->us_rbuff_lock);
ppp1682drivers/net/ppp.cclear_bit (0, &ppp->us_rbuff_lock);
ppp1698drivers/net/ppp.cselect_wait (&ppp->read_wait, wait);
ppp1702drivers/net/ppp.cif (ppp_lock (ppp)) {
ppp1703drivers/net/ppp.cif (ppp->sending == 0) {
ppp1704drivers/net/ppp.cppp_unlock (ppp);
ppp1707drivers/net/ppp.cppp_unlock (ppp);
ppp1709drivers/net/ppp.cselect_wait (&ppp->write_wait, wait);
ppp1727drivers/net/ppp.cstruct ppp *ppp;
ppp1739drivers/net/ppp.cppp   = &ppp_ctrl[dev->base_addr];
ppp1740drivers/net/ppp.ctty   = ppp->tty;
ppp1746drivers/net/ppp.c(unsigned long int) skb, ppp->sending));
ppp1749drivers/net/ppp.cif (!ppp->inuse) {
ppp1777drivers/net/ppp.cif (ppp->flags & SC_IP_DOWN) {
ppp1778drivers/net/ppp.cif (ppp->flags & SC_IP_FLUSH == 0) {
ppp1779drivers/net/ppp.cif (ppp_us_queue (ppp, proto, p, len))
ppp1780drivers/net/ppp.cppp->flags |= SC_IP_FLUSH;
ppp1786drivers/net/ppp.cif (ppp->sending || !ppp_lock(ppp)) {
ppp1788drivers/net/ppp.cppp->stats.sbusy++;
ppp1792drivers/net/ppp.cppp->xhead = ppp->xbuff;
ppp1795drivers/net/ppp.cif (ppp->flags & SC_COMP_TCP) {
ppp1796drivers/net/ppp.clen = slhc_compress(ppp->slcomp, p, len, ppp->cbuff, &p, 
ppp1797drivers/net/ppp.c!(ppp->flags & SC_NO_TCP_CCID));
ppp1810drivers/net/ppp.c++ppp->stats.scomp;
ppp1812drivers/net/ppp.c++ppp->stats.suncomp;
ppp1823drivers/net/ppp.cif (jiffies - ppp->last_xmit > OPTIMIZE_FLAG_TIME)
ppp1824drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1825drivers/net/ppp.cppp->last_xmit = jiffies;
ppp1827drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1830drivers/net/ppp.cppp->fcs = PPP_FCS_INIT;
ppp1831drivers/net/ppp.cif (!(ppp->flags & SC_COMP_AC)) { 
ppp1832drivers/net/ppp.cppp_stuff_char(ppp, PPP_ADDRESS);
ppp1833drivers/net/ppp.cppp_stuff_char(ppp, PPP_CONTROL);
ppp1836drivers/net/ppp.cif (!(ppp->flags & SC_COMP_PROT) || (proto & 0xff00))
ppp1837drivers/net/ppp.cppp_stuff_char(ppp, proto>>8);
ppp1838drivers/net/ppp.cppp_stuff_char(ppp, proto&0xff);
ppp1842drivers/net/ppp.cppp_stuff_char(ppp, *p++);
ppp1845drivers/net/ppp.cppp_add_fcs(ppp);
ppp1846drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1849drivers/net/ppp.cppp->ddinfo.ip_sjiffies = jiffies;
ppp1853drivers/net/ppp.cppp_print_buffer ("xmit buffer", ppp->xbuff, ppp->xhead - ppp->xbuff, KERNEL_DS);
ppp1856drivers/net/ppp.c(int) (ppp->xhead - ppp->xbuff)));
ppp1859drivers/net/ppp.cppp_kick_tty(ppp);
ppp1905drivers/net/ppp.cstruct ppp *ppp = &ppp_ctrl[dev->base_addr];
ppp1908drivers/net/ppp.cppp_stats.rx_packets = ppp->stats.rcomp + ppp->stats.runcomp;
ppp1909drivers/net/ppp.cppp_stats.rx_errors = ppp->stats.rerrors;
ppp1910drivers/net/ppp.cppp_stats.rx_dropped = ppp->stats.tossed;
ppp1912drivers/net/ppp.cppp_stats.rx_length_errors = ppp->stats.runts;
ppp1913drivers/net/ppp.cppp_stats.rx_over_errors = ppp->stats.roverrun;
ppp1916drivers/net/ppp.cppp_stats.tx_packets = ppp->stats.scomp + ppp->stats.suncomp;
ppp1917drivers/net/ppp.cppp_stats.tx_errors = ppp->stats.serrors;
ppp1920drivers/net/ppp.cppp_stats.collisions = ppp->stats.sbusy;
ppp1937drivers/net/ppp.cstruct ppp *
ppp1949drivers/net/ppp.cstatic struct ppp *
ppp1965drivers/net/ppp.cppp_lock(struct ppp *ppp)
ppp1970drivers/net/ppp.clocked = ppp->sending;
ppp1971drivers/net/ppp.cppp->sending = 1;
ppp1972drivers/net/ppp.cif (ppp->dev->flags & IFF_UP)
ppp1973drivers/net/ppp.cppp->dev->tbusy = 1;
ppp1979drivers/net/ppp.cppp_unlock(struct ppp *ppp)
ppp1984drivers/net/ppp.cppp->sending = 0;
ppp1985drivers/net/ppp.cif (ppp->dev->flags & IFF_UP)
ppp1986drivers/net/ppp.cppp->dev->tbusy = 0;
ppp1993drivers/net/ppp.cppp_add_fcs(struct ppp *ppp)
ppp1995drivers/net/ppp.cunsigned short fcs = ppp->fcs;
ppp1998drivers/net/ppp.cppp_stuff_char(ppp, fcs & 0x00ff);
ppp1999drivers/net/ppp.cppp_stuff_char(ppp, (fcs & 0xff00) >> 8);
ppp2000drivers/net/ppp.cASSERT (ppp->fcs == PPP_FCS_GOOD);
ppp2006drivers/net/ppp.cppp_check_fcs(struct ppp *ppp)
ppp2009drivers/net/ppp.cunsigned char *c = ppp->rbuff;
ppp2012drivers/net/ppp.cfor (i = 0; i < ppp->rcount - 2; i++, c++)