Annotation of 40BSD/cmd/delivermail/util.c, revision 1.1.1.1

1.1       root        1: # include <sysexits.h>
                      2: # include "useful.h"
                      3: 
                      4: static char    SccsId[] = "@(#)util.c  1.4     10/21/80";
                      5: 
                      6: /*
                      7: **  STRIPQUOTES -- Strip quotes & quote bits from a string.
                      8: **
                      9: **     Runs through a string and strips off unquoted quote
                     10: **     characters and quote bits.  This is done in place.
                     11: **
                     12: **     Parameters:
                     13: **             s -- the string to strip.
                     14: **
                     15: **     Returns:
                     16: **             none.
                     17: **
                     18: **     Side Effects:
                     19: **             none.
                     20: **
                     21: **     Called By:
                     22: **             deliver
                     23: */
                     24: 
                     25: stripquotes(s)
                     26:        char *s;
                     27: {
                     28:        register char *p;
                     29:        register char *q;
                     30:        register char c;
                     31: 
                     32:        for (p = q = s; (c = *p++) != '\0'; )
                     33:        {
                     34:                if (c != '"')
                     35:                        *q++ = c & 0177;
                     36:        }
                     37:        *q = '\0';
                     38: }
                     39: /*
                     40: **  XALLOC -- Allocate memory and bitch wildly on failure.
                     41: **
                     42: **     THIS IS A CLUDGE.  This should be made to give a proper
                     43: **     error -- but after all, what can we do?
                     44: **
                     45: **     Parameters:
                     46: **             sz -- size of area to allocate.
                     47: **
                     48: **     Returns:
                     49: **             pointer to data region.
                     50: **
                     51: **     Side Effects:
                     52: **             Memory is allocated.
                     53: **
                     54: **     Called By:
                     55: **             lots of people.
                     56: */
                     57: 
                     58: char *
                     59: xalloc(sz)
                     60:        register unsigned int sz;
                     61: {
                     62:        register char *p;
                     63:        extern char *malloc();
                     64: 
                     65:        p = malloc(sz);
                     66:        if (p == NULL)
                     67:        {
                     68:                syserr("Out of memory!!");
                     69:                exit(EX_UNAVAILABLE);
                     70:        }
                     71:        return (p);
                     72: }
                     73: /*
                     74: **  ANY -- Return TRUE if the character exists in the string.
                     75: **
                     76: **     Parameters:
                     77: **             c -- the character.
                     78: **             s -- the string
                     79: **                     (sounds like an avant garde script)
                     80: **
                     81: **     Returns:
                     82: **             TRUE -- if c could be found in s.
                     83: **             FALSE -- otherwise.
                     84: **
                     85: **     Side Effects:
                     86: **             none.
                     87: **
                     88: **     Called By:
                     89: **             prescan
                     90: */
                     91: 
                     92: any(c, s)
                     93:        register char c;
                     94:        register char *s;
                     95: {
                     96:        register char c2;
                     97: 
                     98:        while ((c2 = *s++) != '\0')
                     99:                if (c2 == c)
                    100:                        return (TRUE);
                    101:        return (FALSE);
                    102: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.