Home | History | Annotate | Line # | Download | only in util
      1 /*	$NetBSD: attr_clnt.h,v 1.3 2022/10/08 16:12:50 christos Exp $	*/
      2 
      3 #ifndef _ATTR_CLNT_H_INCLUDED_
      4 #define _ATTR_CLNT_H_INCLUDED_
      5 
      6 /*++
      7 /* NAME
      8 /*	attr_clnt 3h
      9 /* SUMMARY
     10 /*	attribute query-reply client
     11 /* SYNOPSIS
     12 /*	#include <attr_clnt.h>
     13 /* DESCRIPTION
     14 /* .nf
     15 
     16  /*
     17   * System library.
     18   */
     19 #include <stdarg.h>
     20 
     21  /*
     22   * Utility library.
     23   */
     24 #include <attr.h>
     25 
     26  /*
     27   * External interface.
     28   */
     29 typedef struct ATTR_CLNT ATTR_CLNT;
     30 typedef int (*ATTR_CLNT_PRINT_FN) (VSTREAM *, int, va_list);
     31 typedef int (*ATTR_CLNT_SCAN_FN) (VSTREAM *, int, va_list);
     32 typedef int (*ATTR_CLNT_HANDSHAKE_FN) (VSTREAM *);
     33 
     34 extern ATTR_CLNT *attr_clnt_create(const char *, int, int, int);
     35 extern int attr_clnt_request(ATTR_CLNT *, int,...);
     36 extern void attr_clnt_free(ATTR_CLNT *);
     37 extern void attr_clnt_control(ATTR_CLNT *, int,...);
     38 
     39 #define ATTR_CLNT_CTL_END	0
     40 #define ATTR_CLNT_CTL_PROTO	1	/* print/scan functions */
     41 #define ATTR_CLNT_CTL_REQ_LIMIT	2	/* requests per connection */
     42 #define ATTR_CLNT_CTL_TRY_LIMIT	3	/* attempts per request */
     43 #define ATTR_CLNT_CTL_TRY_DELAY	4	/* pause between requests */
     44 #define ATTR_CLNT_CTL_HANDSHAKE	5	/* handshake before first request */
     45 
     46 /* LICENSE
     47 /* .ad
     48 /* .fi
     49 /*	The Secure Mailer license must be distributed with this software.
     50 /* AUTHOR(S)
     51 /*	Wietse Venema
     52 /*	IBM T.J. Watson Research
     53 /*	P.O. Box 704
     54 /*	Yorktown Heights, NY 10598, USA
     55 /*
     56 /*	Wietse Venema
     57 /*	Google, Inc.
     58 /*	111 8th Avenue
     59 /*	New York, NY 10011, USA
     60 /*--*/
     61 
     62 #endif
     63