i am be root
wangchuan...@163.com From: Ole Troan Date: 2018-09-13 21:26 To: wangchuan...@163.com CC: Klement Sekera -X (ksekera - PANTHEON TECHNOLOGIES at Cisco); Dave Barach (dbarach); vpp-dev Subject: Re: [vpp-dev] VPP's C-type-api example > But I got some error when using vapi - vapi_connect as " vl_map_shmem:639: > region init fail “. Permission error? Run client as root, or configure VPP to set permissions on API shared memory. In VPP startup: api-segment { uid <foo> gid <foo> } Cheers, Ole > And my mem : MemFree: 220036 kB | HugePages_Total: > 679 | HugePages_Free: 627 > Help please! > > My code: > int main() > { > vapi_ctx_t ctx; > vapi_error_e rv = vapi_ctx_alloc (&ctx); > vapi_msg_show_version *sv = vapi_alloc_show_version (ctx); > rv = vapi_connect (ctx, app_name, api_prefix, max_outstanding_requests, > response_queue_size, VAPI_MODE_BLOCKING); > rv = vapi_send (ctx, sv); > vapi_msg_show_version_reply *reply; > rv = vapi_recv (ctx, (void **) &reply, NULL, 0, 0); > if(reply != NULL) > printf("ret[%d] program[%s] version[%s] \n build_date[%s] > build_directory[%s]\n", reply->payload.retval, reply->payload.program, > reply->payload.version, reply->payload.build_date, > reply->payload.build_directory); > else > printf("show version return none\n"); > rv = vapi_disconnect (ctx); > vapi_ctx_free (ctx); > printf("end\n"); > return 0; > } > > wangchuan...@163.com > > From: Klement Sekera > Date: 2018-09-13 17:02 > To: Ole Troan; wangchuanguo > CC: Dave Barach (dbarach); vpp-dev > Subject: Re: [vpp-dev] VPP's C-type-api example > You can also check out the test/ext directory for vapi_c_test.c and > vapi_cpp_test.cpp, which are unittests for these bindings and there is > also an example of _dump API call. > > Regards, > Klement > > Quoting Ole Troan (2018-09-13 09:33:14) > > Hi again, > > > > > I am in the beginning of using-c-api. Should I not follow > > > (src/vpp-api/client) ? > > > Can you please show me a fun-name and a example of the higher level C API? > > > > That’s right, I wouldn’t recommend using the src/vpp-aoi/client API unless > > you are building a new language binding. > > > > If you need a C interface you should use VAPI. > > > > See interface.api.vapi.h (auto-generated) for sw_interface_dump() > > > > static inline vapi_error_e vapi_sw_interface_dump(struct vapi_ctx_s *ctx, > > vapi_msg_sw_interface_dump *msg, > > vapi_error_e (*callback)(struct vapi_ctx_s *ctx, > > void *callback_ctx, > > vapi_error_e rv, > > bool is_last, > > vapi_payload_sw_interface_details *reply), > > void *callback_ctx) > > > > > > src/vpp-api/vapi/vapi_doc.md for documentation. > > > > To get a feel of how the API works, at even higher level you can play with > > the Python language binding. > > > > Best regards, > > Ole > > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- > > Links: You receive all messages sent to this group. > > > > View/Reply Online (#10481): https://lists.fd.io/g/vpp-dev/message/10481 > > Mute This Topic: https://lists.fd.io/mt/25510961/675704 > > Group Owner: vpp-dev+ow...@lists.fd.io > > Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [ksek...@cisco.com] > > -=-=-=-=-=-=-=-=-=-=-=-
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#10488): https://lists.fd.io/g/vpp-dev/message/10488 Mute This Topic: https://lists.fd.io/mt/25510961/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-