Revision bf47fe4b nest/protocol.h

View differences:

nest/protocol.h
152 152
   *			It can construct a new rte, add private attributes and
153 153
   *			decide whether the route shall be imported: 1=yes, -1=no,
154 154
   *			0=process it through the import filter set by the user.
155
   *	   reload_routes   Request protocol to reload all its routes to the core
156
   *			(using rte_update()). Returns: 0=reload cannot be done,
157
   *			1= reload is scheduled and will happen (asynchronously).
155 158
   */
156 159

  
157 160
  void (*if_notify)(struct proto *, unsigned flags, struct iface *i);
......
161 164
  struct ea_list *(*make_tmp_attrs)(struct rte *rt, struct linpool *pool);
162 165
  void (*store_tmp_attrs)(struct rte *rt, struct ea_list *attrs);
163 166
  int (*import_control)(struct proto *, struct rte **rt, struct ea_list **attrs, struct linpool *pool);
167
  int (*reload_routes)(struct proto *);
164 168

  
165 169
  /*
166 170
   *	Routing entry hooks (called only for rte's belonging to this protocol):
......
190 194
void *proto_new(struct proto_config *, unsigned size);
191 195
void *proto_config_new(struct protocol *, unsigned size);
192 196

  
197
void proto_request_feeding(struct proto *p);
193 198
void proto_show(struct symbol *, int);
194 199
struct proto *proto_get_named(struct symbol *, struct protocol *);
195 200
void proto_xxable(char *, int);
......
271 276
 *		HUNGRY/DOWN --> HUNGRY/START --> HUNGRY/UP -->
272 277
 *		FEEDING/UP --> HAPPY/UP --> FLUSHING/STOP|DOWN -->
273 278
 *		HUNGRY/STOP|DOWN --> HUNGRY/DOWN
279
 *
280
 *	Sometimes, protocol might switch from HAPPY/UP to FEEDING/UP 
281
 *	if it wants to refeed the routes (for example BGP does so
282
 *	as a result of received ROUTE-REFRESH request).
274 283
 */
275 284

  
276 285
#define FS_HUNGRY 0

Also available in: Unified diff