equilibrium-data_config.h

Go to the documentation of this file.
00001 /*
00002  * $Id: equilibrium-data_config.h 346460 2009-11-14 05:06:47Z ssiano $
00003  *
00004  * This code is provided as is by Juniper Networks SDK Developer Support.
00005  * It is provided with no warranties or guarantees, and Juniper Networks
00006  * will not provide support or maintenance of this code in any fashion.
00007  * The code is provided only to help a developer better understand how
00008  * the SDK can be used.
00009  * 
00010  * Copyright (c) 2008, Juniper Networks, Inc.
00011  * All rights reserved.
00012  */
00013 
00023 #ifndef __EQUILIBRIUM_DATA_CONFIG_H__
00024 #define __EQUILIBRIUM_DATA_CONFIG_H__
00025 
00026 
00027 /*** Constants ***/
00028 
00029 #define MAX_APP_NAME    256  
00030 
00031 /*** Data Structures ***/
00032 
00036 typedef struct eq_smon_s {
00037     uint16_t    connection_interval;  
00038     uint16_t    connection_timeout;   
00039     uint8_t     timeouts_allowed;     
00040     uint16_t    down_retry_interval;  
00041 } eq_smon_t;
00042 
00043 
00044 /*** GLOBAL/EXTERNAL Functions ***/
00045 
00046 
00056 status_t
00057 init_config(evContext ctx);
00058 
00062 void
00063 clear_config(void);
00064 
00065 
00072 time_t
00073 get_current_time(void);
00074 
00075 
00079 void
00080 reset_configuration(void);
00081 
00082 
00089 void
00090 delete_service_set(uint16_t svc_set_id);
00091 
00092 
00102 void
00103 delete_application(uint16_t svc_set_id,
00104                    char * app_name);
00105 
00106 
00116 void
00117 delete_all_servers(uint16_t svc_set_id,
00118                    char * app_name);
00119 
00120 
00133 void
00134 delete_server(uint16_t svc_set_id,
00135               char * app_name,
00136               in_addr_t server_addr);
00137 
00138 
00173 void
00174 update_application(uint16_t svc_set_id,
00175                    char * app_name,
00176                    in_addr_t app_addr,
00177                    uint16_t app_port,
00178                    uint16_t session_timeout, 
00179                    uint16_t connection_interval,
00180                    uint16_t connection_timeout,
00181                    uint8_t timeouts_allowed,
00182                    uint16_t down_retry_interval);
00183 
00184 
00197 void
00198 add_server(uint16_t svc_set_id,
00199            char * app_name,
00200            in_addr_t server_addr);
00201 
00202 
00219 char *
00220 get_app_name(uint16_t svc_set_id, in_addr_t addr, uint16_t port);
00221 
00222 
00239 uint16_t
00240 get_app_session_timeout(uint16_t svc_set_id, in_addr_t addr, uint16_t port);
00241 
00242 #endif

2007-2009 Juniper Networks, Inc. All rights reserved. The information contained herein is confidential information of Juniper Networks, Inc., and may not be used, disclosed, distributed, modified, or copied without the prior written consent of Juniper Networks, Inc. in an express license. This information is subject to change by Juniper Networks, Inc. Juniper Networks, the Juniper Networks logo, and JUNOS are registered trademarks of Juniper Networks, Inc. in the United States and other countries. All other trademarks, service marks, registered trademarks, or registered service marks are the property of their respective owners.
Generated on Sun May 30 20:26:56 2010 for SDK Your Net Corporation Equilibrium Load Balancer Example: equilibrium-data 1.0 by Doxygen 1.5.1