home *** CD-ROM | disk | FTP | other *** search
/ OpenStep 4.2J (Developer) / os42jdev.iso / NextDeveloper / Source / GNU / uucp / Uucp.framework / uuconf.subproj / base.c < prev    next >
Encoding:
C/C++ Source or Header  |  1995-10-09  |  1.7 KB  |  55 lines

  1. /* base.c
  2.    Subroutine to turn a cmdtab_offset table into a uuconf_cmdtab table.
  3.  
  4.    Copyright (C) 1992 Ian Lance Taylor
  5.  
  6.    This file is part of the Taylor UUCP uuconf library.
  7.  
  8.    This library is free software; you can redistribute it and/or
  9.    modify it under the terms of the GNU Library General Public License
  10.    as published by the Free Software Foundation; either version 2 of
  11.    the License, or (at your option) any later version.
  12.  
  13.    This library is distributed in the hope that it will be useful, but
  14.    WITHOUT ANY WARRANTY; without even the implied warranty of
  15.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  16.    Library General Public License for more details.
  17.  
  18.    You should have received a copy of the GNU Library General Public
  19.    License along with this library; if not, write to the Free Software
  20.    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  21.  
  22.    The author of the program may be contacted at ian@airs.com or
  23.    c/o Cygnus Support, 48 Grove Street, Somerville, MA 02144.
  24.    */
  25.  
  26. #include "uucnfi.h"
  27.  
  28. #if USE_RCS_ID
  29. const char _uuconf_base_rcsid[] = "$Id: base.c,v 1.5 1995/06/21 19:21:36 ian Rel $";
  30. #endif
  31.  
  32. /* This turns a cmdtab_offset table into a uuconf_cmdtab table.  Each
  33.    offset is adjusted by a base value.  */
  34.  
  35. void
  36. _uuconf_ucmdtab_base (qoff, celes, pbase, qset)
  37.      register const struct cmdtab_offset *qoff;
  38.      size_t celes;
  39.      char *pbase;
  40.      register struct uuconf_cmdtab *qset;
  41. {
  42.   register size_t i;
  43.  
  44.   for (i = 0; i < celes; i++, qoff++, qset++)
  45.     {
  46.       qset->uuconf_zcmd = qoff->zcmd;
  47.       qset->uuconf_itype = qoff->itype;
  48.       if (qoff->ioff == (size_t) -1)
  49.     qset->uuconf_pvar = NULL;
  50.       else
  51.     qset->uuconf_pvar = pbase + qoff->ioff;
  52.       qset->uuconf_pifn = qoff->pifn;
  53.     }
  54. }
  55.