taglinefilesource code
ppp79drivers/net/ppp.c#define CHECK_PPP(a)  if (!ppp->inuse) { PRINTK ((ppp_warning, __LINE__)) return a;}
ppp80drivers/net/ppp.c#define CHECK_PPP_VOID()  if (!ppp->inuse) { PRINTK ((ppp_warning, __LINE__)) return;}
ppp82drivers/net/ppp.c#define in_xmap(ppp,c)  (ppp->xmit_async_map[(c) >> 5] & (1 << ((c) & 0x1f)))
ppp83drivers/net/ppp.c#define in_rmap(ppp,c)  ((((unsigned int) (unsigned char) (c)) < 0x20) && \
ppp84drivers/net/ppp.cppp->recv_async_map & (1 << (c)))
ppp95drivers/net/ppp.cstatic void ppp_init_ctrl_blk(struct ppp *);
ppp99drivers/net/ppp.cstatic void ppp_kick_tty(struct ppp *);
ppp102drivers/net/ppp.c#define ppp_find(tty) ((struct ppp *) tty->disc_data)
ppp105drivers/net/ppp.cstatic void ppp_unesc(struct ppp *ppp, unsigned char *c, int n);
ppp106drivers/net/ppp.cstatic struct ppp *ppp_find(struct tty_struct *);
ppp109drivers/net/ppp.cstatic void ppp_doframe(struct ppp *);
ppp110drivers/net/ppp.cstatic int ppp_do_ip(struct ppp *, unsigned short, unsigned char *, int);
ppp111drivers/net/ppp.cstatic int ppp_us_queue(struct ppp *, unsigned short, unsigned char *, int);
ppp130drivers/net/ppp.cstatic struct ppp *ppp_alloc(void);
ppp131drivers/net/ppp.cstatic int ppp_lock(struct ppp *);
ppp132drivers/net/ppp.cstatic void ppp_unlock(struct ppp *);
ppp133drivers/net/ppp.cstatic void ppp_add_fcs(struct ppp *);
ppp134drivers/net/ppp.cstatic int ppp_check_fcs(struct ppp *);
ppp196drivers/net/ppp.cstatic struct ppp ppp_ctrl[PPP_NRUNIT];
ppp209drivers/net/ppp.cstruct ppp *ppp;
ppp212drivers/net/ppp.cppp = &ppp_ctrl[dev->base_addr];
ppp257drivers/net/ppp.cppp_init_ctrl_blk (ppp);
ppp258drivers/net/ppp.cppp->inuse = 0;
ppp259drivers/net/ppp.cppp->line  = dev->base_addr;
ppp260drivers/net/ppp.cppp->tty   = NULL;
ppp261drivers/net/ppp.cppp->dev   = dev;
ppp264drivers/net/ppp.cmemset (&ppp->stats, '\0', sizeof (struct ppp_stats));
ppp301drivers/net/ppp.cppp_init_ctrl_blk(struct ppp *ppp)
ppp303drivers/net/ppp.cppp->magic    = PPP_MAGIC;
ppp304drivers/net/ppp.cppp->sending    = 0;
ppp305drivers/net/ppp.cppp->toss    = 0xFE;
ppp306drivers/net/ppp.cppp->escape    = 0;
ppp308drivers/net/ppp.cppp->flags    = 0;
ppp309drivers/net/ppp.cppp->mtu    = PPP_MTU;
ppp310drivers/net/ppp.cppp->mru    = PPP_MRU;
ppp311drivers/net/ppp.cppp->fcs    = 0;
ppp313drivers/net/ppp.cmemset (ppp->xmit_async_map, 0, sizeof (ppp->xmit_async_map));
ppp314drivers/net/ppp.cppp->xmit_async_map[0] = 0xffffffff;
ppp315drivers/net/ppp.cppp->xmit_async_map[3] = 0x60000000;
ppp316drivers/net/ppp.cppp->recv_async_map   = 0x00000000;
ppp318drivers/net/ppp.cppp->slcomp    = NULL;
ppp319drivers/net/ppp.cppp->rbuff    = NULL;
ppp320drivers/net/ppp.cppp->xbuff    = NULL;
ppp321drivers/net/ppp.cppp->cbuff    = NULL;
ppp323drivers/net/ppp.cppp->rhead    = NULL;
ppp324drivers/net/ppp.cppp->rend    = NULL;
ppp325drivers/net/ppp.cppp->rcount    = 0;
ppp326drivers/net/ppp.cppp->xhead    = NULL;
ppp327drivers/net/ppp.cppp->xtail    = NULL;
ppp329drivers/net/ppp.cppp->us_rbuff    = NULL;
ppp330drivers/net/ppp.cppp->us_rbuff_end  = NULL;
ppp331drivers/net/ppp.cppp->us_rbuff_head  = NULL;
ppp332drivers/net/ppp.cppp->us_rbuff_tail  = NULL;
ppp333drivers/net/ppp.cppp->read_wait  = NULL;
ppp334drivers/net/ppp.cppp->write_wait  = NULL;
ppp335drivers/net/ppp.cppp->us_rbuff_lock  = 0;
ppp336drivers/net/ppp.cppp->inp_sig    = 0;
ppp337drivers/net/ppp.cppp->inp_sig_pid  = 0;
ppp340drivers/net/ppp.cppp->last_xmit  = jiffies - OPTIMIZE_FLAG_TIME;
ppp342drivers/net/ppp.cppp->last_xmit  = 0;
ppp346drivers/net/ppp.cmemset (&ppp->stats, '\0', sizeof (struct ppp_stats));
ppp349drivers/net/ppp.cppp->ddinfo.ip_sjiffies  =
ppp350drivers/net/ppp.cppp->ddinfo.ip_rjiffies  =
ppp351drivers/net/ppp.cppp->ddinfo.nip_sjiffies =
ppp352drivers/net/ppp.cppp->ddinfo.nip_rjiffies = jiffies;
ppp362drivers/net/ppp.cppp_changedmtu (struct ppp *ppp, int new_mtu, int new_mru)
ppp371drivers/net/ppp.cdev = ppp->dev;
ppp412drivers/net/ppp.cold_xbuff       = ppp->xbuff;
ppp413drivers/net/ppp.cold_rbuff       = ppp->rbuff;
ppp414drivers/net/ppp.cold_cbuff       = ppp->cbuff;
ppp416drivers/net/ppp.cppp->xbuff      = new_xbuff;
ppp417drivers/net/ppp.cppp->rbuff      = new_rbuff;
ppp418drivers/net/ppp.cppp->cbuff      = new_cbuff;
ppp424drivers/net/ppp.cppp->rend       = (unsigned char *)
ppp427drivers/net/ppp.cppp->rhead      = new_rbuff;
ppp431drivers/net/ppp.cppp->toss    = 0xFE;
ppp432drivers/net/ppp.cppp->escape  = 0;
ppp433drivers/net/ppp.cppp->sending  = 0;
ppp434drivers/net/ppp.cppp->rcount  = 0;
ppp436drivers/net/ppp.cppp->mru    = new_mru;
ppp438drivers/net/ppp.cppp->mtu    =
ppp459drivers/net/ppp.cppp_release(struct ppp *ppp)
ppp462drivers/net/ppp.cif (ppp->tty != NULL && ppp->tty->disc_data == ppp)
ppp463drivers/net/ppp.cppp->tty->disc_data = NULL; /* Break the tty->ppp link */
ppp466drivers/net/ppp.cif (ppp->dev) {
ppp467drivers/net/ppp.cppp->dev->flags &= ~IFF_UP; /* down the device */
ppp468drivers/net/ppp.cppp->dev->flags |= IFF_POINTOPOINT;
ppp471drivers/net/ppp.ckfree (ppp->xbuff);
ppp472drivers/net/ppp.ckfree (ppp->cbuff);
ppp473drivers/net/ppp.ckfree (ppp->rbuff);
ppp474drivers/net/ppp.ckfree (ppp->us_rbuff);
ppp476drivers/net/ppp.cppp->xbuff    =
ppp477drivers/net/ppp.cppp->cbuff    =
ppp478drivers/net/ppp.cppp->rbuff    =
ppp479drivers/net/ppp.cppp->us_rbuff = NULL;
ppp481drivers/net/ppp.cif (ppp->slcomp) {
ppp482drivers/net/ppp.cslhc_free(ppp->slcomp);
ppp483drivers/net/ppp.cppp->slcomp = NULL;
ppp486drivers/net/ppp.cppp->inuse = 0;
ppp487drivers/net/ppp.cppp->tty   = NULL;
ppp493drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp495drivers/net/ppp.cif (ppp == NULL || ppp->magic != PPP_MAGIC) {
ppp499drivers/net/ppp.cppp_release (ppp);
ppp501drivers/net/ppp.cPRINTKN (2,(KERN_INFO "ppp: channel %s closing.\n", ppp->dev->name));
ppp509drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp511drivers/net/ppp.cif (ppp) {
ppp513drivers/net/ppp.cppp->magic == PPP_MAGIC ? ppp->dev->name : "unknown"));
ppp517drivers/net/ppp.cppp = ppp_alloc();
ppp518drivers/net/ppp.cif (ppp == NULL) {
ppp524drivers/net/ppp.cppp_init_ctrl_blk (ppp);
ppp526drivers/net/ppp.cppp->tty = tty;
ppp529drivers/net/ppp.ctty->disc_data = ppp;
ppp539drivers/net/ppp.cif ((ppp->slcomp = slhc_init(16, 16)) == NULL) {
ppp541drivers/net/ppp.cppp_release (ppp);
ppp546drivers/net/ppp.cppp_changedmtu (ppp, ppp->dev->mtu, ppp->mru);
ppp547drivers/net/ppp.cif (ppp->rbuff == NULL) {
ppp548drivers/net/ppp.cppp_release (ppp);
ppp553drivers/net/ppp.cppp->us_rbuff = (unsigned char *) kmalloc (RBUFSIZE, GFP_KERNEL);
ppp554drivers/net/ppp.cif (ppp->us_rbuff == NULL) {
ppp556drivers/net/ppp.cppp_release (ppp);
ppp560drivers/net/ppp.cppp->us_rbuff_head =
ppp561drivers/net/ppp.cppp->us_rbuff_tail = ppp->us_rbuff;
ppp562drivers/net/ppp.cppp->us_rbuff_end  = ppp->us_rbuff + RBUFSIZE;
ppp564drivers/net/ppp.cPRINTKN (2,(KERN_INFO "ppp: channel %s open\n", ppp->dev->name));
ppp566drivers/net/ppp.creturn (ppp->line);
ppp574drivers/net/ppp.cstruct ppp *ppp = &ppp_ctrl[dev->base_addr];
ppp579drivers/net/ppp.cif (ppp->tty == NULL) {
ppp595drivers/net/ppp.cstruct ppp *ppp = &ppp_ctrl[dev->base_addr];
ppp597drivers/net/ppp.cif (ppp->tty == NULL) {
ppp612drivers/net/ppp.cstruct ppp *ppp = &ppp_ctrl[dev->base_addr];
ppp628drivers/net/ppp.cmemcpy_tofs (&result->ppp_stats, &ppp->stats, sizeof (struct ppp_stats));
ppp629drivers/net/ppp.cif (ppp->slcomp)
ppp630drivers/net/ppp.cmemcpy_tofs (&result->slhc,    ppp->slcomp, sizeof (struct slcompress));
ppp648drivers/net/ppp.cppp_output_done (void *ppp)
ppp651drivers/net/ppp.cppp_unlock ((struct ppp *) ppp);
ppp655drivers/net/ppp.cif (((struct ppp *) ppp)->dev->flags & IFF_UP)
ppp659drivers/net/ppp.cdev_tint (((struct ppp *) ppp)->dev);
ppp663drivers/net/ppp.cwake_up_interruptible (&((struct ppp *) ppp)->write_wait);
ppp668drivers/net/ppp.cppp_kick_tty (struct ppp *ppp)
ppp670drivers/net/ppp.cregister int count = ppp->xhead - ppp->xbuff;
ppp673drivers/net/ppp.cppp->stats.sbytes += count;
ppp675drivers/net/ppp.canswer = tty_write_data (ppp->tty,
ppp676drivers/net/ppp.cppp->xbuff,
ppp679drivers/net/ppp.c(void *) ppp);
ppp682drivers/net/ppp.cppp_output_done (ppp);   /* Should not happen */
ppp685drivers/net/ppp.cppp->stats.serrors++;
ppp686drivers/net/ppp.cppp_output_done (ppp); /* unlock the transmitter */
ppp693drivers/net/ppp.cppp_kick_tty (struct ppp *ppp)
ppp697drivers/net/ppp.ccount = ppp->xhead - ppp->xbuff;
ppp699drivers/net/ppp.cactual = ppp->tty->driver.write(ppp->tty, 0, ppp->xbuff, count);
ppp700drivers/net/ppp.cppp->stats.sbytes += actual;
ppp702drivers/net/ppp.cppp_output_done(ppp);
ppp704drivers/net/ppp.cppp->xtail = ppp->xbuff + actual;
ppp705drivers/net/ppp.cppp->tty->flags |= (1 << TTY_DO_WRITE_WAKEUP);
ppp712drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp714drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp721drivers/net/ppp.cif (!ppp->xtail)
ppp725drivers/net/ppp.cif (ppp->flags & SC_XMIT_BUSY) {
ppp729drivers/net/ppp.cppp->flags |= SC_XMIT_BUSY;
ppp732drivers/net/ppp.ccount = ppp->xhead - ppp->xtail;
ppp734drivers/net/ppp.cactual = tty->driver.write(tty, 0, ppp->xtail, count);
ppp735drivers/net/ppp.cppp->stats.sbytes += actual;
ppp737drivers/net/ppp.cppp->xtail = 0;
ppp740drivers/net/ppp.cppp_output_done(ppp);
ppp742drivers/net/ppp.cppp->xtail += actual;
ppp744drivers/net/ppp.cppp->flags &= ~SC_XMIT_BUSY;
ppp759drivers/net/ppp.cppp_enqueue(struct ppp *ppp, unsigned char c)
ppp765drivers/net/ppp.cif (ppp->rhead < ppp->rend) {
ppp766drivers/net/ppp.c*ppp->rhead = c;
ppp767drivers/net/ppp.cppp->rhead++;
ppp768drivers/net/ppp.cppp->rcount++;
ppp770drivers/net/ppp.cppp->stats.roverrun++;
ppp812drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp817drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp827drivers/net/ppp.cppp_dump_inqueue(ppp->tty);
ppp843drivers/net/ppp.cppp->stats.rbytes += n;
ppp844drivers/net/ppp.cppp_unesc(ppp,buff,n);
ppp846drivers/net/ppp.cppp->toss = error;
ppp856drivers/net/ppp.cppp_unesc(struct ppp *ppp, unsigned char *c, int n)
ppp877drivers/net/ppp.cppp->escape = PPP_TRANS;
ppp881drivers/net/ppp.cif (ppp->escape)    /* PPP_ESC just before PPP_FLAG is illegal */
ppp882drivers/net/ppp.cppp->toss = 0xFF;
ppp884drivers/net/ppp.cif ((ppp->toss & 0x80) == 0)
ppp885drivers/net/ppp.cppp_doframe(ppp);  /* pass frame on to next layers */
ppp887drivers/net/ppp.cppp->rcount = 0;
ppp888drivers/net/ppp.cppp->rhead  = ppp->rbuff;
ppp889drivers/net/ppp.cppp->escape = 0;
ppp890drivers/net/ppp.cppp->toss   = 0;
ppp894drivers/net/ppp.cif (!in_rmap (ppp, *c)) {
ppp895drivers/net/ppp.cif (ppp->toss == 0)
ppp896drivers/net/ppp.cppp_enqueue (ppp, *c ^ ppp->escape);
ppp897drivers/net/ppp.cppp->escape = 0;
ppp914drivers/net/ppp.cregister struct ppp *ppp = ppp_find (tty);
ppp919drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp931drivers/net/ppp.cppp->stats.rbytes += count;
ppp937drivers/net/ppp.cif (*fp && ppp->toss == 0)
ppp938drivers/net/ppp.cppp->toss = *fp;
ppp956drivers/net/ppp.cppp->escape = PPP_TRANS;
ppp960drivers/net/ppp.cif (ppp->escape)    /* PPP_ESC just before PPP_FLAG is "cancel"*/
ppp961drivers/net/ppp.cppp->toss = 0xFF;
ppp963drivers/net/ppp.cif ((ppp->toss & 0x80) == 0)
ppp964drivers/net/ppp.cppp_doframe(ppp);  /* pass frame on to next layers */
ppp966drivers/net/ppp.cppp->rcount = 0;
ppp967drivers/net/ppp.cppp->rhead  = ppp->rbuff;
ppp968drivers/net/ppp.cppp->escape = 0;
ppp969drivers/net/ppp.cppp->toss   = 0;
ppp973drivers/net/ppp.cif (!in_rmap (ppp, c)) {
ppp974drivers/net/ppp.cif (ppp->toss == 0)
ppp975drivers/net/ppp.cppp_enqueue (ppp, c ^ ppp->escape);
ppp976drivers/net/ppp.cppp->escape = 0;
ppp986drivers/net/ppp.cppp_doframe(struct ppp *ppp)
ppp988drivers/net/ppp.cu_char *c = ppp->rbuff;
ppp990drivers/net/ppp.cint count = ppp->rcount;
ppp993drivers/net/ppp.cif (ppp->toss) {
ppp995drivers/net/ppp.cppp->toss));
ppp996drivers/net/ppp.cppp->stats.rerrors++;
ppp1009drivers/net/ppp.cppp->stats.runts++;
ppp1014drivers/net/ppp.cif (!ppp_check_fcs(ppp)) {
ppp1016drivers/net/ppp.cppp->stats.rerrors++;
ppp1038drivers/net/ppp.cif ((ppp->dev->flags & IFF_UP) && ppp_do_ip(ppp, proto, c, count)) {
ppp1039drivers/net/ppp.cppp->ddinfo.ip_rjiffies = jiffies;
ppp1049drivers/net/ppp.cif (ppp_us_queue (ppp, proto, c, count+2)) {
ppp1050drivers/net/ppp.cppp->ddinfo.nip_rjiffies = jiffies;
ppp1051drivers/net/ppp.cppp->stats.rothers++;
ppp1058drivers/net/ppp.cppp->stats.tossed++;
ppp1066drivers/net/ppp.cppp_do_ip (struct ppp *ppp, unsigned short proto, unsigned char *c,
ppp1075drivers/net/ppp.cPRINTK (("KERN_DEBUG %s <-- proto %x len %d\n", ppp->dev->name,
ppp1080drivers/net/ppp.cppp->stats.runcomp++;
ppp1084drivers/net/ppp.cif ((proto == PROTO_VJCOMP) && !(ppp->flags & SC_REJ_COMP_TCP)) {
ppp1089drivers/net/ppp.cif ((ppp->rhead + 80) < ppp->rend) {
ppp1090drivers/net/ppp.cppp->rhead += 80;
ppp1091drivers/net/ppp.cppp->rcount += 80;
ppp1099drivers/net/ppp.cppp->stats.roverrun++;
ppp1103drivers/net/ppp.ccount = slhc_uncompress(ppp->slcomp, c, count);
ppp1105drivers/net/ppp.cppp->stats.rerrors++;
ppp1109drivers/net/ppp.cppp->stats.rcomp++;
ppp1113drivers/net/ppp.cif ((proto == PROTO_VJUNCOMP) && !(ppp->flags & SC_REJ_COMP_TCP)) {
ppp1114drivers/net/ppp.cif (slhc_remember(ppp->slcomp, c, count) <= 0) {
ppp1115drivers/net/ppp.cppp->stats.rerrors++;
ppp1119drivers/net/ppp.cppp->stats.runcomp++;
ppp1129drivers/net/ppp.cPRINTK ((KERN_INFO "%s <--    src %lx dst %lx len %d\n", ppp->dev->name, 
ppp1134drivers/net/ppp.c(void) dev_rint (c, count, 0, ppp->dev);
ppp1141drivers/net/ppp.c#define PUTC(c,label) *ppp->us_rbuff_head++ = c; \
ppp1142drivers/net/ppp.cif (ppp->us_rbuff_head == ppp->us_rbuff_end) \
ppp1143drivers/net/ppp.cppp->us_rbuff_head = ppp->us_rbuff; \
ppp1144drivers/net/ppp.cif (ppp->us_rbuff_head == ppp->us_rbuff_tail) \
ppp1146drivers/net/ppp.c#define GETC(c) c = *ppp->us_rbuff_tail++; \
ppp1147drivers/net/ppp.cif (ppp->us_rbuff_tail == ppp->us_rbuff_end) \
ppp1148drivers/net/ppp.cppp->us_rbuff_tail = ppp->us_rbuff;
ppp1151drivers/net/ppp.cppp_us_queue(struct ppp *ppp, unsigned short proto, 
ppp1159drivers/net/ppp.cif (set_bit(1, &ppp->us_rbuff_lock)) {
ppp1163drivers/net/ppp.csaved_head = ppp->us_rbuff_head;
ppp1175drivers/net/ppp.cclear_bit(1, &ppp->us_rbuff_lock);
ppp1176drivers/net/ppp.cwake_up_interruptible (&ppp->read_wait);
ppp1179drivers/net/ppp.ckill_fasync(ppp->tty->fasync, SIGIO);
ppp1182drivers/net/ppp.cif (ppp->inp_sig && ppp->inp_sig_pid)
ppp1183drivers/net/ppp.cif (kill_proc (ppp->inp_sig_pid, ppp->inp_sig, 1) != 0) {
ppp1187drivers/net/ppp.cppp->inp_sig = 0;
ppp1188drivers/net/ppp.cppp->inp_sig_pid = 0;
ppp1193drivers/net/ppp.cppp->us_rbuff_head = saved_head;
ppp1194drivers/net/ppp.cclear_bit(1, &ppp->us_rbuff_lock);
ppp1216drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp1220drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp1233drivers/net/ppp.cif (set_bit(0, &ppp->us_rbuff_lock) == 0) {
ppp1235drivers/net/ppp.cif (ppp->us_rbuff_head == ppp->us_rbuff_tail) {
ppp1238drivers/net/ppp.cclear_bit(0, &ppp->us_rbuff_lock);
ppp1239drivers/net/ppp.cif (ppp->inp_sig) {
ppp1246drivers/net/ppp.cppp->ddinfo.nip_rjiffies = jiffies;
ppp1257drivers/net/ppp.cppp->us_rbuff_head += len;
ppp1258drivers/net/ppp.cif (ppp->us_rbuff_head > ppp->us_rbuff_end)
ppp1259drivers/net/ppp.cppp->us_rbuff_head += - (ppp->us_rbuff_end - ppp->us_rbuff);
ppp1260drivers/net/ppp.cclear_bit(0, &ppp->us_rbuff_lock);
ppp1261drivers/net/ppp.cwake_up_interruptible (&ppp->read_wait);
ppp1262drivers/net/ppp.cppp->stats.rgiants++;
ppp1275drivers/net/ppp.cclear_bit(0, &ppp->us_rbuff_lock);
ppp1277drivers/net/ppp.cppp->stats.rothers++;
ppp1285drivers/net/ppp.cinterruptible_sleep_on (&ppp->read_wait);
ppp1295drivers/net/ppp.cppp_stuff_char(struct ppp *ppp, unsigned char c)
ppp1297drivers/net/ppp.cint curpt = ppp->xhead - ppp->xbuff;
ppp1300drivers/net/ppp.c(unsigned int) ppp->xbuff, (unsigned int) ppp->xhead, curpt))
ppp1302drivers/net/ppp.cif (in_xmap (ppp, c)) {
ppp1303drivers/net/ppp.c*ppp->xhead++ = PPP_ESC;
ppp1304drivers/net/ppp.c*ppp->xhead++ = c ^ PPP_TRANS;
ppp1306drivers/net/ppp.c*ppp->xhead++ = c;
ppp1307drivers/net/ppp.cppp->fcs = (ppp->fcs >> 8) ^ fcstab[(ppp->fcs ^ c) & 0xff];
ppp1317drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp1320drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp1327drivers/net/ppp.cif (ppp->mtu != ppp->dev->mtu)  /* Someone has been ifconfigging */
ppp1328drivers/net/ppp.cppp_changedmtu (ppp, ppp->dev->mtu, ppp->mru);
ppp1330drivers/net/ppp.cif (nr > ppp->mtu) {
ppp1333drivers/net/ppp.cnr, ppp->mtu));
ppp1334drivers/net/ppp.cnr = ppp->mtu;
ppp1342drivers/net/ppp.cwhile ((ppp->sending == 1) || !ppp_lock(ppp)) {
ppp1345drivers/net/ppp.cinterruptible_sleep_on(&ppp->write_wait);
ppp1353drivers/net/ppp.cppp->xhead = ppp->xbuff;
ppp1356drivers/net/ppp.cif (jiffies - ppp->last_xmit > OPTIMIZE_FLAG_TIME)
ppp1357drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1358drivers/net/ppp.cppp->last_xmit = jiffies;
ppp1360drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1363drivers/net/ppp.cppp->fcs = PPP_FCS_INIT;
ppp1366drivers/net/ppp.cppp_stuff_char(ppp,get_fs_byte(buf++));
ppp1368drivers/net/ppp.cppp_add_fcs(ppp);    /* concatenate FCS at end */
ppp1370drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1373drivers/net/ppp.cppp->ddinfo.nip_sjiffies = jiffies;
ppp1376drivers/net/ppp.cppp_print_buffer ("xmit buffer", ppp->xbuff, ppp->xhead - ppp->xbuff, KERNEL_DS);
ppp1379drivers/net/ppp.c"ppp_write: writing %d chars\n", ppp->xhead - ppp->xbuff));
ppp1383drivers/net/ppp.c++ppp->stats.sothers;
ppp1384drivers/net/ppp.cppp_kick_tty(ppp);
ppp1393drivers/net/ppp.cstruct ppp *ppp = ppp_find(tty);
ppp1397drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp1414drivers/net/ppp.cif (ppp->mru != temp_i)
ppp1415drivers/net/ppp.cppp_changedmtu (ppp, ppp->dev->mtu, temp_i);
ppp1422drivers/net/ppp.ctemp_i = (ppp->flags & SC_MASK);
ppp1437drivers/net/ppp.cppp->flags ^= ((ppp->flags ^ temp_i) & SC_MASK);
ppp1445drivers/net/ppp.cput_fs_long (ppp->xmit_async_map[0], l);
ppp1447drivers/net/ppp.cl, ppp->xmit_async_map[0]));
ppp1454drivers/net/ppp.cmemset (ppp->xmit_async_map, 0, sizeof (ppp->xmit_async_map));
ppp1455drivers/net/ppp.cppp->xmit_async_map[0] = get_fs_long (l);
ppp1456drivers/net/ppp.cbset (ppp->xmit_async_map, PPP_FLAG);
ppp1457drivers/net/ppp.cbset (ppp->xmit_async_map, PPP_ESC);
ppp1459drivers/net/ppp.cppp->xmit_async_map[0]));
ppp1466drivers/net/ppp.cppp->recv_async_map = get_fs_long (l);
ppp1468drivers/net/ppp.cppp->recv_async_map));
ppp1475drivers/net/ppp.cput_fs_long (ppp->dev->base_addr, l);
ppp1476drivers/net/ppp.cPRINTKN (3,(KERN_INFO "ppp_ioctl: get unit: %d", ppp->dev->base_addr));
ppp1483drivers/net/ppp.cppp->inp_sig     = (int) get_fs_long (l);
ppp1484drivers/net/ppp.cppp->inp_sig_pid = current->pid;
ppp1485drivers/net/ppp.cPRINTKN (3,(KERN_INFO "ppp_ioctl: set input signal %d\n", ppp->inp_sig));
ppp1512drivers/net/ppp.cmemcpy_tofs ((void *) l, &ppp->stats, sizeof (struct ppp_stats));
ppp1524drivers/net/ppp.ccur_ddinfo.ip_sjiffies  = cur_jiffies - ppp->ddinfo.ip_sjiffies;
ppp1525drivers/net/ppp.ccur_ddinfo.ip_rjiffies  = cur_jiffies - ppp->ddinfo.ip_rjiffies;
ppp1526drivers/net/ppp.ccur_ddinfo.nip_sjiffies = cur_jiffies - ppp->ddinfo.nip_sjiffies;
ppp1527drivers/net/ppp.ccur_ddinfo.nip_rjiffies = cur_jiffies - ppp->ddinfo.nip_rjiffies;
ppp1537drivers/net/ppp.csizeof (ppp->xmit_async_map));
ppp1540drivers/net/ppp.cppp->xmit_async_map,
ppp1541drivers/net/ppp.csizeof (ppp->xmit_async_map));
ppp1548drivers/net/ppp.csizeof (ppp->xmit_async_map));
ppp1552drivers/net/ppp.cmemcpy_fromfs (temp_tbl, (void *) l, sizeof (ppp->xmit_async_map));
ppp1562drivers/net/ppp.cmemcpy (ppp->xmit_async_map, temp_tbl, sizeof (ppp->xmit_async_map));
ppp1573drivers/net/ppp.cif (ppp->slcomp != NULL)
ppp1574drivers/net/ppp.cslhc_free (ppp->slcomp);
ppp1576drivers/net/ppp.cppp->slcomp = slhc_init (temp_i, temp_i);
ppp1578drivers/net/ppp.cif (ppp->slcomp == NULL) {
ppp1580drivers/net/ppp.cppp_release (ppp);
ppp1616drivers/net/ppp.cstruct ppp *ppp = ppp_find (tty);
ppp1618drivers/net/ppp.cif (!ppp || ppp->magic != PPP_MAGIC) {
ppp1629drivers/net/ppp.cif (set_bit(0, &ppp->us_rbuff_lock) == 0) {
ppp1631drivers/net/ppp.cif (ppp->us_rbuff_head != ppp->us_rbuff_tail) {
ppp1632drivers/net/ppp.cclear_bit (0, &ppp->us_rbuff_lock);
ppp1635drivers/net/ppp.cclear_bit (0, &ppp->us_rbuff_lock);
ppp1651drivers/net/ppp.cselect_wait (&ppp->read_wait, wait);
ppp1655drivers/net/ppp.cif (ppp_lock (ppp)) {
ppp1656drivers/net/ppp.cif (ppp->sending == 0) {
ppp1657drivers/net/ppp.cppp_unlock (ppp);
ppp1660drivers/net/ppp.cppp_unlock (ppp);
ppp1662drivers/net/ppp.cselect_wait (&ppp->write_wait, wait);
ppp1680drivers/net/ppp.cstruct ppp *ppp;
ppp1692drivers/net/ppp.cppp   = &ppp_ctrl[dev->base_addr];
ppp1693drivers/net/ppp.ctty   = ppp->tty;
ppp1699drivers/net/ppp.c(unsigned long int) skb, ppp->sending));
ppp1723drivers/net/ppp.cif (ppp->flags & SC_IP_DOWN) {
ppp1724drivers/net/ppp.cif (ppp->flags & SC_IP_FLUSH == 0) {
ppp1725drivers/net/ppp.cif (ppp_us_queue (ppp, proto, p, len))
ppp1726drivers/net/ppp.cppp->flags |= SC_IP_FLUSH;
ppp1732drivers/net/ppp.cif (ppp->sending || !ppp_lock(ppp)) {
ppp1734drivers/net/ppp.cppp->stats.sbusy++;
ppp1738drivers/net/ppp.cppp->xhead = ppp->xbuff;
ppp1741drivers/net/ppp.cif (ppp->flags & SC_COMP_TCP) {
ppp1743drivers/net/ppp.clen = slhc_compress(ppp->slcomp, p, len, ppp->cbuff, &p, 0);
ppp1756drivers/net/ppp.c++ppp->stats.scomp;
ppp1758drivers/net/ppp.c++ppp->stats.suncomp;
ppp1769drivers/net/ppp.cif (jiffies - ppp->last_xmit > OPTIMIZE_FLAG_TIME)
ppp1770drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1771drivers/net/ppp.cppp->last_xmit = jiffies;
ppp1773drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1776drivers/net/ppp.cppp->fcs = PPP_FCS_INIT;
ppp1777drivers/net/ppp.cif (!(ppp->flags & SC_COMP_AC)) { 
ppp1778drivers/net/ppp.cppp_stuff_char(ppp, PPP_ADDRESS);
ppp1779drivers/net/ppp.cppp_stuff_char(ppp, PPP_CONTROL);
ppp1782drivers/net/ppp.cif (!(ppp->flags & SC_COMP_PROT) || (proto & 0xff00))
ppp1783drivers/net/ppp.cppp_stuff_char(ppp, proto>>8);
ppp1784drivers/net/ppp.cppp_stuff_char(ppp, proto&0xff);
ppp1788drivers/net/ppp.cppp_stuff_char(ppp, *p++);
ppp1791drivers/net/ppp.cppp_add_fcs(ppp);
ppp1792drivers/net/ppp.c*ppp->xhead++ = PPP_FLAG;
ppp1795drivers/net/ppp.cppp->ddinfo.ip_sjiffies = jiffies;
ppp1799drivers/net/ppp.cppp_print_buffer ("xmit buffer", ppp->xbuff, ppp->xhead - ppp->xbuff, KERNEL_DS);
ppp1802drivers/net/ppp.c"ppp_write: writing %d chars\n", ppp->xhead - ppp->xbuff));
ppp1805drivers/net/ppp.cppp_kick_tty(ppp);
ppp1857drivers/net/ppp.cstruct ppp *ppp = &ppp_ctrl[dev->base_addr];
ppp1860drivers/net/ppp.cppp_stats.rx_packets = ppp->stats.rcomp + ppp->stats.runcomp;
ppp1861drivers/net/ppp.cppp_stats.rx_errors = ppp->stats.rerrors;
ppp1862drivers/net/ppp.cppp_stats.rx_dropped = ppp->stats.tossed;
ppp1864drivers/net/ppp.cppp_stats.rx_length_errors = ppp->stats.runts;
ppp1865drivers/net/ppp.cppp_stats.rx_over_errors = ppp->stats.roverrun;
ppp1868drivers/net/ppp.cppp_stats.tx_packets = ppp->stats.scomp + ppp->stats.suncomp;
ppp1869drivers/net/ppp.cppp_stats.tx_errors = ppp->stats.serrors;
ppp1872drivers/net/ppp.cppp_stats.collisions = ppp->stats.sbusy;
ppp1889drivers/net/ppp.cstruct ppp *
ppp1901drivers/net/ppp.cstatic struct ppp *
ppp1917drivers/net/ppp.cppp_lock(struct ppp *ppp)
ppp1922drivers/net/ppp.clocked = ppp->sending;
ppp1923drivers/net/ppp.cppp->sending = 1;
ppp1924drivers/net/ppp.cif (ppp->dev->flags & IFF_UP)
ppp1925drivers/net/ppp.cppp->dev->tbusy = 1;
ppp1931drivers/net/ppp.cppp_unlock(struct ppp *ppp)
ppp1936drivers/net/ppp.cppp->sending = 0;
ppp1937drivers/net/ppp.cif (ppp->dev->flags & IFF_UP)
ppp1938drivers/net/ppp.cppp->dev->tbusy = 0;
ppp1945drivers/net/ppp.cppp_add_fcs(struct ppp *ppp)
ppp1947drivers/net/ppp.cunsigned short fcs = ppp->fcs;
ppp1950drivers/net/ppp.cppp_stuff_char(ppp, fcs & 0x00ff);
ppp1951drivers/net/ppp.cppp_stuff_char(ppp, (fcs & 0xff00) >> 8);
ppp1952drivers/net/ppp.cASSERT (ppp->fcs == PPP_FCS_GOOD);
ppp1958drivers/net/ppp.cppp_check_fcs(struct ppp *ppp)
ppp1961drivers/net/ppp.cunsigned char *c = ppp->rbuff;
ppp1964drivers/net/ppp.cfor (i = 0; i < ppp->rcount - 2; i++, c++)