[BACK]Return to kernfs_subr.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / miscfs / kernfs

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/miscfs/kernfs/Attic/kernfs_subr.c between version 1.4 and 1.5

version 1.4, 2003/09/26 03:08:18 version 1.5, 2003/09/27 13:29:02
Line 160  kernfs_allocvp(mp, vpp, kfs_type, kt, va
Line 160  kernfs_allocvp(mp, vpp, kfs_type, kt, va
                         return (0);                          return (0);
         } while (lockmgr(&kfs_hashlock, LK_EXCLUSIVE|LK_SLEEPFAIL, 0));          } while (lockmgr(&kfs_hashlock, LK_EXCLUSIVE|LK_SLEEPFAIL, 0));
   
         if (kfs_type == Kdevice) {          if (kfs_type == KFSdevice) {
                         /* /kern/rootdev = look for device and obey */                          /* /kern/rootdev = look for device and obey */
                         /* /kern/rrootdev = look for device and obey */                          /* /kern/rrootdev = look for device and obey */
                 dev_t *dp;                  dev_t *dp;
Line 168  kernfs_allocvp(mp, vpp, kfs_type, kt, va
Line 168  kernfs_allocvp(mp, vpp, kfs_type, kt, va
   
 #ifdef DIAGNOSTIC  #ifdef DIAGNOSTIC
                 if (!kt)                  if (!kt)
                         panic("kernfs: kt == NULL for Kdevice");                          panic("kernfs: kt == NULL for KFSdevice");
 #endif  #endif
                 dp = kt->kt_data;                  dp = kt->kt_data;
         loop:          loop:
Line 227  again:
Line 227  again:
         kfs->kfs_kt = kt;          kfs->kfs_kt = kt;
   
         switch (kfs_type) {          switch (kfs_type) {
         case Kern:      /* /kern = dr-xr-xr-x */          case KFSkern:   /* /kern = dr-xr-xr-x */
                 kfs->kfs_mode = S_IRUSR|S_IXUSR|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH;                  kfs->kfs_mode = S_IRUSR|S_IXUSR|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH;
                 vp->v_type = VDIR;                  vp->v_type = VDIR;
                 vp->v_flag = VROOT;                  vp->v_flag = VROOT;
                 break;                  break;
   
         case Knull:     /* /kern/?? = -r--r--r-- */          case KFSnull:   /* /kern/?? = -r--r--r-- */
         case Ktime:     /* /kern/time = -r--r--r-- */          case KFStime:   /* /kern/time = -r--r--r-- */
         case Kint:      /* /kern/?? = -r--r--r-- */          case KFSint:    /* /kern/?? = -r--r--r-- */
         case Kstring:   /* /kern/?? = -r--r--r-- */          case KFSstring: /* /kern/?? = -r--r--r-- */
         case Kavenrun:  /* /kern/loadavg = -r--r--r-- */          case KFSavenrun:        /* /kern/loadavg = -r--r--r-- */
         case Kmsgbuf:   /* /kern/msgbuf = -r--r--r-- */          case KFSmsgbuf: /* /kern/msgbuf = -r--r--r-- */
                 kfs->kfs_mode = S_IRUSR|S_IRGRP|S_IROTH;                  kfs->kfs_mode = S_IRUSR|S_IRGRP|S_IROTH;
                 vp->v_type = VREG;                  vp->v_type = VREG;
                 break;                  break;
   
         case Kipsecsadir:       /* /kern/ipsecsa = dr-x------ */          case KFSipsecsadir:     /* /kern/ipsecsa = dr-x------ */
         case Kipsecspdir:       /* /kern/ipsecsp = dr-x------ */          case KFSipsecspdir:     /* /kern/ipsecsp = dr-x------ */
                 kfs->kfs_mode = S_IRUSR|S_IXUSR;                  kfs->kfs_mode = S_IRUSR|S_IXUSR;
                 vp->v_type = VDIR;                  vp->v_type = VDIR;
                 break;                  break;
   
         case Kipsecsa:  /* /kern/ipsecsa/N = -r-------- */          case KFSipsecsa:        /* /kern/ipsecsa/N = -r-------- */
         case Kipsecsp:  /* /kern/ipsecsp/N = -r-------- */          case KFSipsecsp:        /* /kern/ipsecsp/N = -r-------- */
                 kfs->kfs_mode = S_IRUSR;                  kfs->kfs_mode = S_IRUSR;
                 vp->v_type = VREG;                  vp->v_type = VREG;
                 break;                  break;
   
         case Khostname: /* /kern/hostname = -rw-r-r--- */          case KFShostname: /* /kern/hostname = -rw-r-r--- */
                 kfs->kfs_mode = S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH;                  kfs->kfs_mode = S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH;
                 vp->v_type = VREG;                  vp->v_type = VREG;
                 break;                  break;
Line 408  kernfs_revoke_sa(sav)
Line 408  kernfs_revoke_sa(sav)
         for (kfs = LIST_FIRST(ppp); kfs; kfs = pnext) {          for (kfs = LIST_FIRST(ppp); kfs; kfs = pnext) {
                 vp = KERNFSTOV(kfs);                  vp = KERNFSTOV(kfs);
                 pnext = LIST_NEXT(kfs, kfs_hash);                  pnext = LIST_NEXT(kfs, kfs_hash);
                 if (vp->v_usecount > 0 && kfs->kfs_type == Kipsecsa &&                  if (vp->v_usecount > 0 && kfs->kfs_type == KFSipsecsa &&
                     kfs->kfs_value == ntohl(sav->spi)) {                      kfs->kfs_value == ntohl(sav->spi)) {
                         m = key_setdumpsa_spi(sav->spi);                          m = key_setdumpsa_spi(sav->spi);
                         if (!m)                          if (!m)
Line 432  kernfs_revoke_sp(sp)
Line 432  kernfs_revoke_sp(sp)
         for (kfs = LIST_FIRST(ppp); kfs; kfs = pnext) {          for (kfs = LIST_FIRST(ppp); kfs; kfs = pnext) {
                 vp = KERNFSTOV(kfs);                  vp = KERNFSTOV(kfs);
                 pnext = LIST_NEXT(kfs, kfs_hash);                  pnext = LIST_NEXT(kfs, kfs_hash);
                 if (vp->v_usecount > 0 && kfs->kfs_type == Kipsecsa &&                  if (vp->v_usecount > 0 && kfs->kfs_type == KFSipsecsa &&
                     kfs->kfs_value == sp->id)                      kfs->kfs_value == sp->id)
                         VOP_REVOKE(vp, REVOKEALL);                          VOP_REVOKE(vp, REVOKEALL);
         }          }

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.5

CVSweb <webmaster@jp.NetBSD.org>