Changeset 356:e203fc0c95e3 in freeDiameter for extensions/app_radgw/rgw_plugins.c
- Timestamp:
- Jul 1, 2010, 3:47:34 PM (13 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
extensions/app_radgw/rgw_plugins.c
r271 r356 349 349 if (plg->descriptor->rgwp_rad_req) { 350 350 TRACE_DEBUG(ANNOYING, "Calling next plugin: %s", plg->descriptor->rgwp_name); 351 ret = (*plg->descriptor->rgwp_rad_req)(plg->cs, *session, &(*rad)->radius, &rad_ans, diam_msg, cli);351 ret = (*plg->descriptor->rgwp_rad_req)(plg->cs, session, &(*rad)->radius, &rad_ans, diam_msg, cli); 352 352 if (ret) 353 353 break; … … 391 391 392 392 /* Loop in the extension list (same as req) to convert data from diam_ans to rad_ans */ 393 int rgw_plg_loop_ans(struct rgw_radius_msg_meta *req, struct session *session, struct msg **diam_ans, struct radius_msg ** rad_ans, struct rgw_client * cli )393 int rgw_plg_loop_ans(struct rgw_radius_msg_meta *req, struct session *session, struct msg **diam_ans, struct radius_msg ** rad_ans, struct rgw_client * cli, int * stateful) 394 394 { 395 395 int ret = 0; 396 396 struct fd_list * head = NULL, *li; 397 397 398 TRACE_ENTRY("%p %p %p %p %p", req, session, diam_ans, rad_ans, cli); 399 CHECK_PARAMS( req && session && diam_ans && *diam_ans && rad_ans && *rad_ans && cli); 398 TRACE_ENTRY("%p %p %p %p %p %p", req, session, diam_ans, rad_ans, cli, stateful); 399 CHECK_PARAMS( req && session && diam_ans && *diam_ans && rad_ans && *rad_ans && cli && stateful); 400 401 *stateful = 0; /* default: stateless gateway */ 400 402 401 403 /* Get the list of extensions of the RADIUS request */ … … 407 409 for (li = head->next; li != head; li = li->next) { 408 410 struct plg_descr * plg = ((struct plg_accel_item *) li)->plg; 411 int locstateful = 0; 409 412 410 413 if (plg->descriptor->rgwp_diam_ans) { 411 414 TRACE_DEBUG(ANNOYING, "Calling next plugin: %s", plg->descriptor->rgwp_name); 412 ret = (*plg->descriptor->rgwp_diam_ans)(plg->cs, session, diam_ans, rad_ans, (void *)cli );415 ret = (*plg->descriptor->rgwp_diam_ans)(plg->cs, session, diam_ans, rad_ans, (void *)cli, &locstateful); 413 416 if (ret) 414 417 break; 418 *stateful |= locstateful; 415 419 } else { 416 420 TRACE_DEBUG(ANNOYING, "Skipping extension '%s' (NULL callback)", plg->descriptor->rgwp_name);
Note: See TracChangeset
for help on using the changeset viewer.