When a non-file endpoint is attached to a file, keep the file endpoint
[fwd] / endpt.h
diff --git a/endpt.h b/endpt.h
index fb44aa9..21a31f3 100644 (file)
--- a/endpt.h
+++ b/endpt.h
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: endpt.h,v 1.1 1999/07/26 23:33:01 mdw Exp $
+ * $Id: endpt.h,v 1.2 1999/10/22 22:46:17 mdw Exp $
  *
  * Generic endpoint abstraction
  *
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: endpt.h,v $
+ * Revision 1.2  1999/10/22 22:46:17  mdw
+ * When a non-file endpoint is attached to a file, keep the file endpoint
+ * open until the nonfile is done.  This stops socket sources from
+ * resetting their connection limits too early.
+ *
  * Revision 1.1  1999/07/26 23:33:01  mdw
  * Infrastructure for the new design.
  *
@@ -81,6 +86,22 @@ typedef struct endpt_ops {
 
   void (*attach)(endpt */*e*/, reffd */*in*/, reffd */*out*/);
 
+  /* --- @file@ --- *
+   *
+   * Arguments:        @endpt *e@ = pointer to endpoint in question
+   *           @endpt *f@ = pointer to a file endpoint
+   *
+   * Returns:  ---
+   *
+   * Use:      Informs a non-file endpoint of a file endpoint which will
+   *           want to be closed when it's finished with.  At that time, the
+   *           endpoint should arrange to have both itself and its partner
+   *           closed.  If no file is registered, the endpoint manager will
+   *           close both endpoints itself.
+   */
+
+  void (*file)(endpt */*e*/, endpt */*f*/);
+
   /* --- @wclose@ --- *
    *
    * Arguments:        @endpt *e@ = endpoint to be partially closed