build: Rewrite the build system to be nicer.
[fwd] / addr.h
diff --git a/addr.h b/addr.h
index adc4cd1..7da1fef 100644 (file)
--- a/addr.h
+++ b/addr.h
@@ -1,13 +1,11 @@
 /* -*-c-*-
  *
- * $Id: addr.h,v 1.3 2003/11/25 14:08:23 mdw Exp $
- *
  * Generic interface to network address handlers
  *
  * (c) 1999 Straylight/Edgeware
  */
 
-/*----- Licensing notice --------------------------------------------------* 
+/*----- Licensing notice --------------------------------------------------*
  *
  * This file is part of the `fw' port forwarder.
  *
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * (at your option) any later version.
- * 
+ *
  * `fw' is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
- * 
+ *
  * You should have received a copy of the GNU General Public License
  * along with `fw'; if not, write to the Free Software Foundation,
  * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  */
 
-/*----- Revision history --------------------------------------------------* 
- *
- * $Log: addr.h,v $
- * Revision 1.3  2003/11/25 14:08:23  mdw
- * Debianization.  Socket target options.  Internet binding.
- *
- * Revision 1.2  1999/07/27 18:30:53  mdw
- * Various minor portability fixes.
- *
- * Revision 1.1  1999/07/26 23:34:26  mdw
- * Socket address type management.
- *
- */
-
 #ifndef ADDR_H
 #define ADDR_H
 
@@ -68,7 +52,7 @@
 #endif
 
 /*----- Data structures ---------------------------------------------------*/
-    
+
 /* --- A generic socket address --- *
  *
  * Not all systems understand @sa_len@ fields.  (In particular, Linux
@@ -174,6 +158,20 @@ typedef struct addr_ops {
 
   int (*option)(scanner */*sc*/, addr_opts */*ao*/, unsigned /*type*/);
 
+  /* --- @confirm@ --- *
+   *
+   * Arguments:        @addr *a@ = pointer to an address structure
+   *           @unsigned type@ = kind of address this is
+   *           @addr_opts *ao@ = address options
+   *
+   * Returns:  ---
+   *
+   * Use:      Called during initialization when an address is fully
+   *           configured.
+   */
+
+  void (*confirm)(addr */*a*/, unsigned /*type*/, addr_opts */*ao*/);
+
   /* --- @freesrcopts@ --- *
    *
    * Arguments:        @addr_opts *ao@ = data block to remove
@@ -272,7 +270,7 @@ typedef struct addr_ops {
   int (*connect)(addr */*a*/, addr_opts */*ao*/, conn */*c*/, endpt */*e*/);
 
 } addr_ops;
-  
+
 /*----- That's all, folks -------------------------------------------------*/
 
 #ifdef __cplusplus