An application initially reads the configured route data from the system configuration and then stores the data in the local configuration database. (For details about how the user interface and configuration code work, see Hello World: The Minimal SDK Application and Creating a User Interface with DDL and ODL).
The application sends requests for route service setup during initialization. Once the route service is established, the application can then send requests for route additions and deletions. The SSD server reports the outcome of the requests asynchronously, and the application can use the server's replies to update the status of the requests in the local configuration database.
main()that reference code to read the configuration and perform tasks at startup. For general details about how to perform initialization tasks, see Initializing an Application.
route-manager_config.c), read the configuration entry for the new route and store it in a local database (The sample application calls the function
config_rt_read()). This code is executed when the configuration is committed.
ssd_ipc_connect_rt_tbl()to make the connection to the SSD server and return the appropriate status (
route-manager_ssd.cperforms these tasks).
ssd_ipc_connect_rt_tbl()to make the connection, you pass a function table that specifies handlers for the various types of reply (
ssd_client_cbsin the sample application; see Handling Replies from the SSD Server).
ssd_client_msg_hdlr()in the sample application) should update a status field in the configuration database and delete the request structure from the queue of pending requests.
ssd_request_route_add(), passing the request params structure. The request is sent over the SSD IPC connection. The SSD server communicates with the Routing Protocol Daemon (rpd) to add the route. (These actions take place in
ssd_rt_add()in the sample application).