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

  1. /* port.c
  2.    Find a port.
  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_port_rcsid[] = "$Id: port.c,v 1.6 1995/06/21 19:23:43 ian Rel $";
  30. #endif
  31.  
  32. /* Find a port by name, baud rate, and special purpose function.  */
  33.  
  34. int
  35. uuconf_find_port (pglobal, zname, ibaud, ihighbaud, pifn, pinfo, qport)
  36.      pointer pglobal;
  37.      const char *zname;
  38.      long ibaud;
  39.      long ihighbaud;
  40.      int (*pifn) P((struct uuconf_port *, pointer));
  41.      pointer pinfo;
  42.      struct uuconf_port *qport;
  43. {
  44. #if HAVE_V2_CONFIG || HAVE_HDB_CONFIG
  45.   struct sglobal *qglobal = (struct sglobal *) pglobal;
  46. #endif
  47.   int iret;
  48.  
  49. #if HAVE_TAYLOR_CONFIG
  50.   iret = uuconf_taylor_find_port (pglobal, zname, ibaud, ihighbaud, pifn,
  51.                   pinfo, qport);
  52.   if (iret != UUCONF_NOT_FOUND)
  53.     return iret;
  54. #endif
  55.  
  56. #if HAVE_V2_CONFIG
  57.   if (qglobal->qprocess->fv2)
  58.     {
  59.       iret = uuconf_v2_find_port (pglobal, zname, ibaud, ihighbaud, pifn,
  60.                   pinfo, qport);
  61.       if (iret != UUCONF_NOT_FOUND)
  62.     return iret;
  63.     }
  64. #endif
  65.  
  66. #if HAVE_HDB_CONFIG
  67.   if (qglobal->qprocess->fhdb)
  68.     {
  69.       iret = uuconf_hdb_find_port (pglobal, zname, ibaud, ihighbaud, pifn,
  70.                    pinfo, qport);
  71.       if (iret != UUCONF_NOT_FOUND)
  72.     return iret;
  73.     }
  74. #endif
  75.  
  76.   return UUCONF_NOT_FOUND;
  77. }
  78.