diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/CMakeLists.txt | 10 | ||||
| -rw-r--r-- | src/lib/irmd_messages.proto | 37 | 
2 files changed, 45 insertions, 2 deletions
diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt index 7ce98bf2..e05dce8b 100644 --- a/src/lib/CMakeLists.txt +++ b/src/lib/CMakeLists.txt @@ -3,6 +3,12 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR})  include_directories(${CMAKE_SOURCE_DIR}/include)  include_directories(${CMAKE_BINARY_DIR}/include) +find_package(ProtobufC REQUIRED) + +include_directories(${PROTOBUF_INCLUDE_DIRS}) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) + +protobuf_generate_c(PROTO_SRCS PROTO_HDRS irmd_messages.proto)  find_library(LIBRT_LIBRARIES rt)  if(NOT LIBRT_LIBRARIES) @@ -30,8 +36,8 @@ set(SOURCE_FILES          utils.c  ) -add_library(ouroboros SHARED ${SOURCE_FILES}) -target_link_libraries(ouroboros rt pthread) +add_library(ouroboros SHARED ${SOURCE_FILES} ${PROTO_SRCS} ${PROTO_HDRS}) +target_link_libraries(ouroboros rt pthread ${PROTOBUF_LIBRARIES})  include(MacroAddCompileFlags)  if (CMAKE_BUILD_TYPE MATCHES Debug) diff --git a/src/lib/irmd_messages.proto b/src/lib/irmd_messages.proto new file mode 100644 index 00000000..c61d1b6d --- /dev/null +++ b/src/lib/irmd_messages.proto @@ -0,0 +1,37 @@ +enum irm_msg_code { +        IRM_CREATE_IPCP = 1; +        IRM_DESTROY_IPCP = 2; +        IRM_BOOTSTRAP_IPCP = 3; +        IRM_ENROLL_IPCP = 4; +        IRM_REG_IPCP = 5; +        IRM_UNREG_IPCP = 6; +        IRM_AP_REG = 7; +        IRM_AP_REG_R = 8; +        IRM_AP_UNREG = 9; +        IRM_FLOW_ACCEPT = 10; +        IRM_FLOW_ACCEPT_R = 11; +        IRM_FLOW_ALLOC_RESP = 12; +        IRM_FLOW_ALLOC = 13; +        IRM_FLOW_ALLOC_R = 14; +        IRM_FLOW_ALLOC_RES = 15; +        IRM_FLOW_ALLOC_RES_R = 16; +        IRM_FLOW_DEALLOC = 17; +        IRM_FLOW_CONTROL = 18; +        IRM_FLOW_WRITE = 19; +        IRM_FLOW_READ = 20; +}; + +message irm_msg { +        required irm_msg_code code = 1; +        optional string ap_name = 2; +        optional uint32 api_id = 3; +        optional string ae_name = 4; +        optional string ipcp_type = 5; +        // Missing dif_config field here +        repeated string dif_name = 7; +        optional int32 fd = 8; +        optional int32 result = 9; +        // Missing qos_spec here +        optional int32 oflags = 10; +        optional string dst_ap_name = 11; +};  | 
