dpm-mgmt_config.h

Go to the documentation of this file.
00001 /*
00002  * $Id: dpm-mgmt_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 
00021 #ifndef __DPM_MGMT_CONFIG_H__
00022 #define __DPM_MGMT_CONFIG_H__
00023 
00024 #include <jnx/patricia.h>
00025 #include <sync/dpm_ipc.h>
00026 
00027 /*** Constants ***/
00028 
00029 
00030 /*** Data structures ***/
00031 
00032 typedef TAILQ_HEAD(cl_list_s, login_class_s) class_list_t; 
00033 
00038 typedef struct policer_s {
00039     patnode        node;         
00040     policer_info_t policer;      
00041 } policer_t;
00042 
00043 
00048 typedef struct int_def_s {
00049     char     name_pattern[MAX_INT_NAME + 1];  
00050     char     input_pol[MAX_POL_NAME + 1];     
00051     char     output_pol[MAX_POL_NAME + 1];    
00052     
00053     TAILQ_ENTRY(int_def_s) entries;           
00054 } int_def_t;
00055 
00056 
00061 typedef struct subscriber_s {
00062     patnode    node;        
00063     sub_info_t subscriber;  
00064 } subscriber_t;
00065 
00070 typedef struct login_sub_s {
00071     char name[MAX_SUB_NAME];            
00072     TAILQ_ENTRY(login_sub_s) entries; 
00073 } login_sub_t;
00074 
00079 typedef struct login_class_s {
00080     char class[MAX_CLASS_NAME];         
00081     TAILQ_HEAD(, login_sub_s) subs;     
00082     TAILQ_ENTRY(login_class_s) entries; 
00083 } login_class_t;
00084 
00085 
00086 /*** GLOBAL/EXTERNAL Functions ***/
00087 
00088 
00092 void
00093 init_config(void);
00094 
00095 
00099 void
00100 clear_config(void);
00101 
00102 
00106 void
00107 clear_logins(void);
00108 
00109 
00113 void
00114 send_configuration(void);
00115 
00116 
00126 void
00127 subscriber_login(char * s_name, char * c_name);
00128 
00138 void
00139 subscriber_logout(char * s_name, char * c_name);
00140 
00141 
00152 int
00153 dpm_config_read(int check);
00154 
00155 
00156 #endif
00157 

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:55 2010 for SDK Your Net Corporation Dynamic Policy Manager Example: dpm-mgmt 1.0 by Doxygen 1.5.1