client.h
Go to the documentation of this file.
00001 #ifndef fooclienthfoo
00002 #define fooclienthfoo
00003 
00004 /* $Id: client.h 1477 2007-05-09 19:45:54Z lennart $ */
00005 
00006 /***
00007   This file is part of avahi.
00008  
00009   avahi is free software; you can redistribute it and/or modify it
00010   under the terms of the GNU Lesser General Public License as
00011   published by the Free Software Foundation; either version 2.1 of the
00012   License, or (at your option) any later version.
00013  
00014   avahi is distributed in the hope that it will be useful, but WITHOUT
00015   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
00016   or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
00017   Public License for more details.
00018  
00019   You should have received a copy of the GNU Lesser General Public
00020   License along with avahi; if not, write to the Free Software
00021   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
00022   USA.
00023 ***/
00024 
00025 #include <inttypes.h>
00026 
00027 #include <avahi-common/cdecl.h>
00028 #include <avahi-common/address.h>
00029 #include <avahi-common/strlst.h>
00030 #include <avahi-common/defs.h>
00031 #include <avahi-common/watch.h>
00032 #include <avahi-common/gccmacro.h>
00033 
00036 AVAHI_C_DECL_BEGIN
00037 
00039 typedef struct AvahiClient AvahiClient;
00040 
00042 typedef enum {
00043     AVAHI_CLIENT_S_REGISTERING = AVAHI_SERVER_REGISTERING,  
00044     AVAHI_CLIENT_S_RUNNING = AVAHI_SERVER_RUNNING,          
00045     AVAHI_CLIENT_S_COLLISION = AVAHI_SERVER_COLLISION,      
00046     AVAHI_CLIENT_FAILURE = 100,                             
00047     AVAHI_CLIENT_CONNECTING = 101                           
00048 } AvahiClientState;
00049 
00050 typedef enum {
00051     AVAHI_CLIENT_IGNORE_USER_CONFIG = 1, 
00052     AVAHI_CLIENT_NO_FAIL = 2        
00053 } AvahiClientFlags;
00054 
00056 typedef void (*AvahiClientCallback) (
00057     AvahiClient *s,
00058     AvahiClientState state ,
00059     void* userdata );
00060 
00064 AvahiClient* avahi_client_new (
00065     const AvahiPoll *poll_api ,
00066     AvahiClientFlags flags ,
00067     AvahiClientCallback callback ,
00068     void *userdata ,
00069     int *error );
00070 
00074 void avahi_client_free(AvahiClient *client);
00075 
00081 const char* avahi_client_get_version_string (AvahiClient*);
00082 
00084 const char* avahi_client_get_host_name (AvahiClient*);
00085 
00087 int avahi_client_set_host_name(AvahiClient*, const char *name);
00088 
00090 const char* avahi_client_get_domain_name (AvahiClient*);
00091 
00093 const char* avahi_client_get_host_name_fqdn (AvahiClient*);
00094 
00096 AvahiClientState avahi_client_get_state(AvahiClient *client); 
00097 
00101 int avahi_client_errno (AvahiClient*);
00102 
00107 uint32_t avahi_client_get_local_service_cookie(AvahiClient *client);
00113 int avahi_nss_support(void);
00114 
00117 AVAHI_C_DECL_END
00118 
00119 #endif


pedal_monitor
Author(s): Pedro Mendes
autogenerated on Fri Jun 6 2014 18:37:20