From 35dea09736d0d142da4928a9ecf34b655e4f105c Mon Sep 17 00:00:00 2001 From: Martin Molnar Date: Sun, 22 Jun 2008 16:06:39 +0200 Subject: [PATCH] Added service contract --- fwp/lib/core/fwp_vres.c | 1 - fwp/lib/mngt/fwp_contract.c | 2 ++ fwp/lib/mngt/fwp_mngt.c | 22 ++++++++++++++-------- fwp/tests/fwp_mngrtest/fwp_mngrtest.c | 3 ++- 4 files changed, 18 insertions(+), 10 deletions(-) diff --git a/fwp/lib/core/fwp_vres.c b/fwp/lib/core/fwp_vres.c index b891236..78e988d 100644 --- a/fwp/lib/core/fwp_vres.c +++ b/fwp/lib/core/fwp_vres.c @@ -169,7 +169,6 @@ fwp_vres_d_t fwp_vres_alloc() return (&fwp_vres_table.entry[i]); } - int fwp_vres_set_params(fwp_vres_d_t vresd, fwp_vres_params_t *params) { fwp_vres_t *vres = vresd; diff --git a/fwp/lib/mngt/fwp_contract.c b/fwp/lib/mngt/fwp_contract.c index 52bd01b..3d6954e 100644 --- a/fwp/lib/mngt/fwp_contract.c +++ b/fwp/lib/mngt/fwp_contract.c @@ -133,6 +133,8 @@ int fwp_contract_commit(fwp_contract_d_t contractd, fwp_vres_d_t *vresdp) contdata->status = FWP_CONT_NEGOTIATED; /* Set parameters of vres * and activate it if needed */ + fwp_vres_set_params(contdata->vresd, &contdata->vres_params); + *vresdp = contdata->vresd; /*TODO: error handling */ return 0; diff --git a/fwp/lib/mngt/fwp_mngt.c b/fwp/lib/mngt/fwp_mngt.c index fcd85f4..e8fef7c 100644 --- a/fwp/lib/mngt/fwp_mngt.c +++ b/fwp/lib/mngt/fwp_mngt.c @@ -61,20 +61,26 @@ int fwp_mngt_recv(fwp_msg_type_t *type, fwp_participant_id_t *participant_id, return 0; } -int fwp_mngt_service_vres_create(fwp_vres_d_t* fwp_service_vresd) +int fwp_mngt_service_vres_create(fwp_vres_d_t* vresdp) { + fwp_contract_d_t contractd; + fwp_contract_data_t* contdata; - /* TODO: Add to contract table */ - /* create service vres */ - - fwp_contract_create(&fwp_service_contact); - if ((fwp_vres_create(&fwp_service_vres_params, fwp_service_vresd) < 0)) { + //contractd = fwp_contract_create(&fwp_service_contract); + if ((fwp_vres_create(&fwp_service_vres_params, vresdp) < 0)) { fprintf(stderr,"Unable to open service vres\n"); return -1; } + //contdata = contractd; + + /* TODO: Consider to call _fwp_contract_commit */ + //contdata->status = FWP_CONT_NEGOTIATED; + /* Set parameters of vres + * and activate it if needed */ + //fwp_vres_set_params(contdata->vresd, &fwp_service_vres_params); + //*vresdp = contdata->vresd; FWP_DEBUG("Service vres negotiated\n"); - return 0; } @@ -131,7 +137,7 @@ int fwp_mngt_connect() FWP_DEBUG("Received HELLO msg contains nodeid= %d appid= %d\n", mngr_info.id.node_id, mngr_info.id.app_id); - /* unbind and delete discovery mngr send endoint */ + /* unbind and delete discovery mngr send endpoint */ fwp_send_endpoint_unbind(fwp_participant_mngr->epointd); fwp_endpoint_destroy(fwp_participant_mngr->epointd); diff --git a/fwp/tests/fwp_mngrtest/fwp_mngrtest.c b/fwp/tests/fwp_mngrtest/fwp_mngrtest.c index b0e5ff3..76e9fe1 100644 --- a/fwp/tests/fwp_mngrtest/fwp_mngrtest.c +++ b/fwp/tests/fwp_mngrtest/fwp_mngrtest.c @@ -105,6 +105,7 @@ int main() fwp_send(sepoint_d1, msg2, sizeof(msg2), 0); printf("Sent msg 2\n"); + /* sleep(1); fwp_contract_cancel(cnt1d); printf("Contract 1 is CANCELED\n"); @@ -117,7 +118,7 @@ int main() } fwp_mngt_disconnect(); - + */ printf("Test PASSED!\n"); scanf("Press key"); -- 2.39.2