[BACK]Return to vars.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / mail

Diff for /src/usr.bin/mail/vars.c between version 1.4 and 1.5

version 1.4, 1997/07/13 23:54:03 version 1.5, 1997/11/14 00:24:01
Line 58 
Line 58 
 assign(name, value)  assign(name, value)
         char name[], value[];          char name[], value[];
 {  {
         register struct var *vp;          struct var *vp;
         register int h;          int h;
   
         h = hash(name);          h = hash(name);
         vp = lookup(name);          vp = lookup(name);
Line 103 
Line 103 
                 return("");                  return("");
         len = strlen(str) + 1;          len = strlen(str) + 1;
         if ((new = (char *)malloc(len)) == NULL)          if ((new = (char *)malloc(len)) == NULL)
                 panic("Out of memory");                  errx(1, "Out of memory");
         (void)memcpy(new, str, len);          (void)memcpy(new, str, len);
         return(new);          return(new);
 }  }
Line 117 
Line 117 
 value(name)  value(name)
         char name[];          char name[];
 {  {
         register struct var *vp;          struct var *vp;
   
         if ((vp = lookup(name)) == NOVAR)          if ((vp = lookup(name)) == NOVAR)
                 return(getenv(name));                  return(getenv(name));
Line 131 
Line 131 
   
 struct var *  struct var *
 lookup(name)  lookup(name)
         register char name[];          char name[];
 {  {
         register struct var *vp;          struct var *vp;
   
         for (vp = variables[hash(name)]; vp != NOVAR; vp = vp->v_link)          for (vp = variables[hash(name)]; vp != NOVAR; vp = vp->v_link)
                 if (*vp->v_name == *name && equal(vp->v_name, name))                  if (*vp->v_name == *name && equal(vp->v_name, name))
Line 147 
Line 147 
   
 struct grouphead *  struct grouphead *
 findgroup(name)  findgroup(name)
         register char name[];          char name[];
 {  {
         register struct grouphead *gh;          struct grouphead *gh;
   
         for (gh = groups[hash(name)]; gh != NOGRP; gh = gh->g_link)          for (gh = groups[hash(name)]; gh != NOGRP; gh = gh->g_link)
                 if (*gh->g_name == *name && equal(gh->g_name, name))                  if (*gh->g_name == *name && equal(gh->g_name, name))
Line 164 
Line 164 
 printgroup(name)  printgroup(name)
         char name[];          char name[];
 {  {
         register struct grouphead *gh;          struct grouphead *gh;
         register struct group *gp;          struct group *gp;
   
         if ((gh = findgroup(name)) == NOGRP) {          if ((gh = findgroup(name)) == NOGRP) {
                 printf("\"%s\": not a group\n", name);                  printf("\"%s\": not a group\n", name);
Line 183 
Line 183 
  */   */
 int  int
 hash(name)  hash(name)
         register char *name;          char *name;
 {  {
         register h = 0;          int h = 0;
   
         while (*name) {          while (*name) {
                 h <<= 2;                  h <<= 2;

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