/* -*-c-*-
*
- * $Id: selbuf.h,v 1.1 1999/05/14 21:01:15 mdw Exp $
+ * $Id: selbuf.h,v 1.3 2000/06/17 10:38:14 mdw Exp $
*
* Line-buffering select handler
*
/*----- Revision history --------------------------------------------------*
*
* $Log: selbuf.h,v $
+ * Revision 1.3 2000/06/17 10:38:14 mdw
+ * Add support for variable buffer sizes.
+ *
+ * Revision 1.2 1999/12/10 23:42:04 mdw
+ * Change header file guard names.
+ *
* Revision 1.1 1999/05/14 21:01:15 mdw
* Integrated `select' handling bits from the background resolver project.
*
*/
-#ifndef SELBUF_H
-#define SELBUF_H
+#ifndef MLIB_SELBUF_H
+#define MLIB_SELBUF_H
#ifdef __cplusplus
extern "C" {
/*----- Header files ------------------------------------------------------*/
-#ifndef LBUF_H
+#ifndef MLIB_LBUF_H
# include "lbuf.h"
#endif
-#ifndef SEL_H
+#ifndef MLIB_SEL_H
# include "sel.h"
#endif
extern void selbuf_disable(selbuf */*b*/);
+/* --- @selbuf_setsize@ --- *
+ *
+ * Arguments: @selbuf *b@ = pointer to buffer block
+ * @size_t sz@ = size of buffer
+ *
+ * Returns: ---
+ *
+ * Use: Sets the size of the buffer used for reading lines.
+ */
+
+extern void selbuf_setsize(selbuf */*b*/, size_t /*sz*/);
+
/* --- @selbuf_init@ --- *
*
* Arguments: @selbuf *b@ = pointer to buffer block
void (*/*func*/)(char */*s*/, void */*p*/),
void */*p*/);
+/* --- @selbuf_destroy@ --- *
+ *
+ * Arguments: @selbuf *b@ = pointer to buffer block
+ *
+ * Returns: ---
+ *
+ * Use: Deallocates a line buffer and frees any resources it owned.
+ */
+
+extern void selbuf_destroy(selbuf */*b*/);
+
/*----- That's all, folks -------------------------------------------------*/
#ifdef __cplusplus