/* * Ouroboros - Copyright (C) 2016 - 2020 * * IRMd message * * Dimitri Staessens * Sander Vrijders * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License * version 2.1 as published by the Free Software Foundation. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., http://www.fsf.org/about/contact/. */ syntax = "proto2"; import "ipcp_config.proto"; import "qosspec.proto"; enum irm_msg_code { IRM_CREATE_IPCP = 1; IPCP_CREATE_R = 2; IRM_DESTROY_IPCP = 3; IRM_LIST_IPCPS = 4; IRM_BOOTSTRAP_IPCP = 5; IRM_ENROLL_IPCP = 6; IRM_CONNECT_IPCP = 7; IRM_DISCONNECT_IPCP = 8; IRM_BIND_PROGRAM = 9; IRM_UNBIND_PROGRAM = 10; IRM_PROC_ANNOUNCE = 11; IRM_BIND_PROCESS = 12; IRM_UNBIND_PROCESS = 13; IRM_REG = 14; IRM_UNREG = 15; IRM_FLOW_ALLOC = 16; IRM_FLOW_ACCEPT = 17; IRM_FLOW_JOIN = 18; IRM_FLOW_DEALLOC = 19; IPCP_FLOW_REQ_ARR = 20; IPCP_FLOW_ALLOC_REPLY = 21; IRM_REPLY = 22; }; message ipcp_info_msg { required uint32 pid = 1; required uint32 type = 2; required string name = 3; required string layer = 4; }; message irm_msg { required irm_msg_code code = 1; optional string prog = 2; optional sint32 pid = 3; optional string name = 4; optional uint32 ipcp_type = 5; optional string layer = 6; repeated string args = 7; optional sint32 response = 8; optional string dst = 9; optional bytes hash = 10; optional sint32 flow_id = 11; optional qosspec_msg qosspec = 12; optional ipcp_config_msg conf = 13; optional uint32 opts = 14; repeated ipcp_info_msg ipcps = 15; optional uint32 timeo_sec = 16; optional uint32 timeo_nsec = 17; optional string comp = 18; optional sint32 result = 19; };