# Generated by the protocol buffer compiler. DO NOT EDIT! # source: dtm.proto require 'google/protobuf' Google::Protobuf::DescriptorPool.generated_pool.build do add_message "contrast.api.dtm.Message" do optional :client_id, :string, 1 optional :client_number, :int32, 2 optional :client_total, :int32, 3 optional :pid, :int64, 8 optional :ppid, :int64, 9 optional :message_count, :int32, 4 optional :timestamp_ms, :int64, 5 optional :app_name, :string, 6 optional :app_language, :string, 7 optional :app_path, :string, 28 oneof :event do optional :agent_startup, :message, 11, "contrast.api.dtm.AgentStartup" optional :application_create, :message, 12, "contrast.api.dtm.ApplicationCreate" optional :server_activity, :message, 10, "contrast.api.dtm.ServerActivity" optional :application_update, :message, 13, "contrast.api.dtm.ApplicationUpdate" optional :activity, :message, 14, "contrast.api.dtm.Activity" optional :observed_route, :message, 26, "contrast.api.dtm.ObservedRoute" optional :request, :message, 19, "contrast.api.dtm.RawRequest" optional :prefilter, :message, 20, "contrast.api.dtm.HttpRequest" optional :postfilter, :message, 22, "contrast.api.dtm.HttpResponse" optional :response, :message, 23, "contrast.api.dtm.RawResponse" optional :sqli_sink, :message, 25, "contrast.api.dtm.SqliSinkRequest" optional :poll, :message, 27, "contrast.api.dtm.Poll" optional :noop, :message, 24, "contrast.api.dtm.Noop" end end add_message "contrast.api.dtm.Poll" do end add_message "contrast.api.dtm.Noop" do optional :flag, :int32, 1 end add_message "contrast.api.dtm.ServerActivity" do map :log_enhancers, :string, :int32, 16 map :ip_blacklists, :string, :int32, 17 end add_message "contrast.api.dtm.AgentStartup" do optional :version, :string, 2 optional :environment, :string, 3 optional :tags, :string, 4 optional :server_name, :string, 5 optional :server_path, :string, 6 optional :server_type, :string, 7 optional :server_version, :string, 8 optional :heartbeat_ms, :int32, 9 end add_message "contrast.api.dtm.ApplicationCreate" do optional :group, :string, 1 optional :app_version, :string, 2 optional :tags, :string, 3 optional :code, :string, 4 optional :metadata, :string, 5 optional :session_id, :string, 6 optional :session_metadata, :string, 7 end add_message "contrast.api.dtm.ApplicationUpdate" do optional :coverage_loc, :int32, 2 optional :platform, :message, 4, "contrast.api.dtm.Platform" optional :view, :message, 5, "contrast.api.dtm.View" map :technologies, :string, :bool, 6 repeated :components, :message, 7, "contrast.api.dtm.ArchitectureComponent" map :libraries, :string, :message, 8, "contrast.api.dtm.Library" repeated :routes, :message, 9, "contrast.api.dtm.RouteCoverage" end add_message "contrast.api.dtm.Activity" do optional :http_request, :message, 1, "contrast.api.dtm.HttpRequest" optional :http_response, :message, 2, "contrast.api.dtm.HttpResponse" optional :duration_ms, :int64, 3 optional :query_count, :int32, 5 map :technologies, :string, :bool, 7 map :library_usages, :string, :message, 8, "contrast.api.dtm.LibraryUsageUpdate" repeated :architectures, :message, 9, "contrast.api.dtm.ArchitectureComponent" repeated :results, :message, 12, "contrast.api.dtm.AttackResult" repeated :findings, :message, 15, "contrast.api.dtm.Finding" repeated :controls, :message, 16, "contrast.api.dtm.PossibleSecurityControl" optional :finding_tags, :string, 17 map :dynamic_sources, :string, :message, 18, "contrast.api.dtm.DynamicSource" repeated :routes, :message, 19, "contrast.api.dtm.RouteCoverage" end add_message "contrast.api.dtm.Finding" do optional :hash_code, :string, 1 optional :platform, :string, 2 optional :rule_id, :string, 3 optional :evidence, :string, 4 map :properties, :string, :string, 6 repeated :events, :message, 7, "contrast.api.dtm.TraceEvent" optional :preflight, :string, 8 optional :tags, :string, 9 optional :version, :int64, 10 repeated :routes, :message, 11, "contrast.api.dtm.RouteCoverage" optional :session_id, :string, 12 end add_message "contrast.api.dtm.DynamicSource" do optional :class_name, :string, 1 optional :method_name, :string, 2 optional :instance_method, :bool, 3 optional :target, :string, 4 repeated :events, :message, 5, "contrast.api.dtm.TraceEvent" map :properties, :string, :string, 6 end add_message "contrast.api.dtm.PossibleSecurityControl" do optional :api, :string, 1 optional :type, :string, 2 optional :traits, :int64, 3 end add_message "contrast.api.dtm.View" do optional :accessible, :int32, 1 optional :total_view_fields, :int32, 2 optional :line_count, :int32, 3 end add_message "contrast.api.dtm.Platform" do optional :major, :string, 1 optional :minor, :string, 2 optional :build, :string, 3 optional :service_pack, :string, 4 repeated :updates, :string, 5 end add_message "contrast.api.dtm.ArchitectureComponent" do optional :type, :string, 1 optional :vendor, :string, 2 optional :url, :string, 3 optional :remote_host, :string, 4 optional :remote_port, :int32, 5 end add_message "contrast.api.dtm.Library" do optional :hash_code, :string, 1 optional :file_path, :string, 2 optional :url, :string, 3 optional :version, :string, 4 optional :tloc, :int32, 5 optional :class_count, :int32, 6 optional :used_class_count, :int32, 7 optional :internal_ms, :int64, 8 optional :external_ms, :int64, 9 optional :manifest, :string, 10 optional :tags, :string, 11 end add_message "contrast.api.dtm.LibraryUsageUpdate" do optional :count, :int32, 1 optional :hash_code, :string, 2 map :class_names, :string, :bool, 3 end add_message "contrast.api.dtm.Address" do optional :ip, :string, 1 optional :host, :string, 2 optional :port, :int32, 3 end add_message "contrast.api.dtm.RawRequest" do optional :uuid, :string, 1 optional :timestamp_ms, :int64, 2 optional :request_line, :string, 4 optional :normalized_uri, :string, 5 optional :client_ip, :string, 6 optional :client_ip_version, :int32, 7 optional :client_port, :int32, 8 optional :server_ip, :string, 10 optional :server_ip_version, :int32, 11 optional :server_port, :int32, 12 repeated :request_headers, :message, 14, "contrast.api.dtm.SimplePair" repeated :multipart_headers, :message, 17, "contrast.api.dtm.SimplePair" optional :request_body, :bytes, 16 end add_message "contrast.api.dtm.RawResponse" do optional :uuid, :string, 1 optional :timestamp_ms, :int64, 2 optional :response_code, :int32, 3 repeated :response_headers, :message, 14, "contrast.api.dtm.SimplePair" optional :response_body, :bytes, 16 end add_message "contrast.api.dtm.HttpRequest" do optional :uuid, :string, 1 optional :timestamp_ms, :int64, 2 optional :sender, :message, 3, "contrast.api.dtm.Address" optional :receiver, :message, 4, "contrast.api.dtm.Address" optional :protocol, :string, 5 optional :version, :string, 6 optional :method, :string, 7 optional :raw, :string, 8 optional :parsed_connection, :bool, 9 optional :uri, :string, 10 optional :normalized_uri, :string, 11 optional :context, :string, 12 optional :path, :string, 13 optional :query_string, :string, 14 map :normalized_request_params, :string, :message, 16, "contrast.api.dtm.Pair" repeated :multipart_headers, :message, 51, "contrast.api.dtm.SimplePair" map :request_headers, :string, :string, 20 optional :parsed_request_headers, :bool, 21 map :normalized_request_headers, :string, :message, 22, "contrast.api.dtm.Pair" map :normalized_cookies, :string, :message, 23, "contrast.api.dtm.Pair" optional :request_body, :string, 30 optional :parsed_request_body, :bool, 31 optional :document_type, :enum, 32, "contrast.api.dtm.HttpRequest.DocumentType" optional :request_body_binary, :bytes, 33 optional :authentication, :enum, 40, "contrast.api.dtm.HttpRequest.Authentication" optional :principal, :string, 41 optional :server_info, :string, 50 end add_enum "contrast.api.dtm.HttpRequest.Authentication" do value :UNAUTHENTICATED, 0 value :AUTHENTICATED, 1 value :LOGIN_FAIL, 2 value :LOGIN_SUCCESS, 3 value :LOGIN_UNKNOWN, 4 end add_enum "contrast.api.dtm.HttpRequest.DocumentType" do value :NORMAL, 0 value :JSON, 1 value :XML, 2 end add_message "contrast.api.dtm.RpcStatus" do optional :code, :enum, 1, "contrast.api.dtm.RpcStatus.Code" optional :msg, :string, 2 end add_enum "contrast.api.dtm.RpcStatus.Code" do value :OK, 0 value :UNKNOWN, 1 end add_message "contrast.api.dtm.SqliSinkRequest" do optional :uuid, :string, 1 optional :dialect, :enum, 2, "contrast.api.dtm.SqliSinkRequest.Dialect" optional :query, :string, 3 end add_enum "contrast.api.dtm.SqliSinkRequest.Dialect" do value :MYSQL, 0 value :POSTGRESQL, 1 value :UNKNOWN, 99 end add_message "contrast.api.dtm.SqliSinkResponse" do optional :status, :message, 1, "contrast.api.dtm.RpcStatus" optional :user_input, :message, 3, "contrast.api.dtm.UserInput" oneof :finding do optional :sqli, :message, 10, "contrast.api.dtm.SqlInjectionDetails" optional :sqli_semantic, :message, 11, "contrast.api.dtm.SqlInjectionSemanticAnalysisDetails" end end add_message "contrast.api.dtm.HttpResponse" do optional :uuid, :string, 1 optional :timestamp_ms, :int64, 2 optional :response_code, :int32, 3 map :response_headers, :string, :string, 4 optional :parsed_response_headers, :bool, 5 map :normalized_response_headers, :string, :message, 6, "contrast.api.dtm.Pair" optional :response_body, :string, 10 optional :parsed_response_body, :bool, 11 optional :document_type, :enum, 12, "contrast.api.dtm.HttpRequest.DocumentType" optional :response_body_binary, :bytes, 13 end add_message "contrast.api.dtm.SimplePair" do optional :key, :string, 1 optional :value, :string, 2 end add_message "contrast.api.dtm.Pair" do optional :key, :string, 1 repeated :values, :string, 2 end add_message "contrast.api.dtm.AttackResult" do optional :response, :enum, 1, "contrast.api.dtm.AttackResult.ResponseType" optional :rule_id, :string, 2 repeated :samples, :message, 6, "contrast.api.dtm.RaspRuleSample" optional :tags, :string, 7 optional :acc_updated_ms, :int64, 16 optional :acc_limit, :int32, 17 optional :acc_window_ms, :int64, 18 optional :acc_count, :int32, 19 optional :acc_mode, :string, 21 optional :acc_msg, :string, 22 end add_enum "contrast.api.dtm.AttackResult.ResponseType" do value :NO_ACTION, 0 value :BLOCKED, 1 value :MONITORED, 2 value :PROBED, 3 value :BLOCKED_AT_PERIMETER, 4 value :AGGREGATED, 5 end add_message "contrast.api.dtm.RaspRuleSample" do optional :timestamp_ms, :int64, 2 repeated :stack_trace_elements, :message, 4, "contrast.api.dtm.StackTraceElement" optional :user_input, :message, 5, "contrast.api.dtm.UserInput" oneof :details do optional :brute_force, :message, 16, "contrast.api.dtm.BruteForceDetails" optional :bot_blocker, :message, 17, "contrast.api.dtm.BotBlockerDetails" optional :cmdi, :message, 18, "contrast.api.dtm.CmdInjectionDetails" optional :csrf, :message, 19, "contrast.api.dtm.CsrfDetails" optional :cve, :message, 20, "contrast.api.dtm.CveDetails" optional :untrusted_deserialization, :message, 21, "contrast.api.dtm.UntrustedDeserializationDetails" optional :el_injection, :message, 22, "contrast.api.dtm.ElInjectionDetails" optional :ip_blacklist, :message, 23, "contrast.api.dtm.IpBlacklistDetails" optional :mark_of_the_beast, :message, 24, "contrast.api.dtm.MarkOfTheBeastDetails" optional :padding_oracle, :message, 25, "contrast.api.dtm.PaddingOracleDetails" optional :path_traversal, :message, 26, "contrast.api.dtm.PathTraversalDetails" optional :re_dos, :message, 27, "contrast.api.dtm.ReDosDetails" optional :sqli, :message, 28, "contrast.api.dtm.SqlInjectionDetails" optional :ssrf, :message, 29, "contrast.api.dtm.SsrfDetails" optional :virtual_patch, :message, 30, "contrast.api.dtm.VirtualPatchDetails" optional :xss, :message, 31, "contrast.api.dtm.XssDetails" optional :xxe, :message, 32, "contrast.api.dtm.XxeDetails" optional :no_sqli, :message, 33, "contrast.api.dtm.NoSqlInjectionDetails" optional :method_tampering, :message, 34, "contrast.api.dtm.HttpMethodTamperingDetails" optional :cve_2017_0898, :message, 35, "contrast.api.dtm.Cve20170898Details" optional :cve_2017_14033, :message, 36, "contrast.api.dtm.Cve201714033Details" optional :cve_2017_14064, :message, 37, "contrast.api.dtm.Cve201714064Details" optional :cve_2017_17405, :message, 38, "contrast.api.dtm.Cve201717405Details" optional :mod_security, :message, 39, "contrast.api.dtm.ModSecurityDetails" optional :endpoint, :message, 40, "contrast.api.dtm.EndpointBanDetails" optional :sqli_semantic, :message, 41, "contrast.api.dtm.SqlInjectionSemanticAnalysisDetails" optional :cmdi_semantic, :message, 42, "contrast.api.dtm.CmdInjectionSemanticAnalysisDetails" optional :path_traversal_semantic, :message, 43, "contrast.api.dtm.PathTraversalSemanticAnalysisDetails" optional :ssjs, :message, 44, "contrast.api.dtm.SsjsInjectionDetails" end end add_message "contrast.api.dtm.EndpointBanDetails" do optional :ip, :string, 1 optional :request_uri, :string, 2 optional :response_code, :int32, 3 end add_message "contrast.api.dtm.ModSecurityDetails" do optional :transaction_id, :string, 1 optional :status, :int32, 2 repeated :logs, :message, 3, "contrast.api.dtm.ModSecurityLog" end add_message "contrast.api.dtm.ModSecurityLog" do optional :message, :string, 2 map :params, :string, :string, 3 end add_message "contrast.api.dtm.BruteForceDetails" do optional :count, :int32, 1 end add_message "contrast.api.dtm.BotBlockerDetails" do optional :bot, :string, 1 optional :user_agent, :string, 2 end add_message "contrast.api.dtm.CmdInjectionDetails" do optional :command, :string, 1 optional :start_idx, :int32, 2 optional :end_idx, :int32, 3 end add_message "contrast.api.dtm.CmdInjectionSemanticAnalysisDetails" do optional :command, :string, 1 repeated :findings, :enum, 2, "contrast.api.dtm.CmdInjectionSemanticAnalysisDetails.Finding" end add_enum "contrast.api.dtm.CmdInjectionSemanticAnalysisDetails.Finding" do value :CHAINING, 0 value :BACKDOOR, 1 value :DANGEROUS_PATH, 2 end add_message "contrast.api.dtm.CsrfDetails" do optional :name, :string, 1 optional :expected, :string, 2 optional :presented, :string, 3 end add_message "contrast.api.dtm.CveDetails" do optional :name, :string, 1 optional :value, :string, 2 optional :cve, :string, 3 optional :library, :string, 4 end add_message "contrast.api.dtm.Cve20170898Details" do optional :format_string, :string, 1 optional :malicious_format_group, :string, 2 optional :precision_argument, :string, 3 optional :value_argument, :string, 4 optional :arguments, :string, 5 optional :ruby_version, :string, 6 end add_message "contrast.api.dtm.Cve201714033Details" do optional :asn1, :string, 1 optional :ruby_version, :string, 2 end add_message "contrast.api.dtm.Cve201714064Details" do optional :space, :string, 1 optional :ruby_version, :string, 2 optional :json_version, :string, 3 end add_message "contrast.api.dtm.Cve201717405Details" do optional :method, :string, 1 optional :file_name, :string, 2 optional :ruby_version, :string, 3 end add_message "contrast.api.dtm.HttpMethodTamperingDetails" do optional :method, :string, 1 optional :response_code, :int32, 2 end add_message "contrast.api.dtm.UntrustedDeserializationDetails" do optional :command, :bool, 1 optional :deserializer, :string, 2 end add_message "contrast.api.dtm.ElInjectionDetails" do optional :attr_value, :string, 1 optional :version, :string, 2 optional :library_filename, :string, 3 end add_message "contrast.api.dtm.IpBlacklistDetails" do optional :ip, :string, 1 optional :uuid, :string, 2 end add_message "contrast.api.dtm.MarkOfTheBeastDetails" do optional :number, :string, 1 optional :vendor, :string, 2 optional :version, :string, 3 end add_message "contrast.api.dtm.PaddingOracleDetails" do optional :message, :string, 1 optional :period, :int32, 2 optional :hits, :int32, 3 end add_message "contrast.api.dtm.PathTraversalDetails" do optional :path, :string, 1 end add_message "contrast.api.dtm.PathTraversalSemanticAnalysisDetails" do optional :path, :string, 1 repeated :findings, :enum, 2, "contrast.api.dtm.PathTraversalSemanticAnalysisDetails.Finding" end add_enum "contrast.api.dtm.PathTraversalSemanticAnalysisDetails.Finding" do value :CUSTOM_CODE_ACCESSING_SYSTEM_FILES, 0 value :COMMON_FILE_EXPLOITS, 1 end add_message "contrast.api.dtm.ReDosDetails" do optional :times_accessed, :int32, 1 optional :execution_time_ms, :int64, 2 optional :pattern, :string, 3 optional :offending_string, :string, 4 end add_message "contrast.api.dtm.SsjsInjectionDetails" do optional :code_string, :string, 1 optional :start_idx, :int32, 2 optional :end_idx, :int32, 3 optional :boundary_overrun_idx, :int32, 4 end add_message "contrast.api.dtm.SqlInjectionDetails" do optional :start_idx, :int32, 1 optional :end_idx, :int32, 2 optional :boundary_overrun_idx, :int32, 3 optional :input_boundary_idx, :int32, 4 optional :query, :string, 5 end add_message "contrast.api.dtm.SqlInjectionSemanticAnalysisDetails" do optional :query, :string, 1 optional :finding, :enum, 2, "contrast.api.dtm.SqlInjectionSemanticAnalysisDetails.Finding" end add_enum "contrast.api.dtm.SqlInjectionSemanticAnalysisDetails.Finding" do value :CHAINING, 0 value :SUSPICIOUS_UNION, 1 value :DANGEROUS_FUNCTION, 2 value :TAUTOLOGY, 3 end add_message "contrast.api.dtm.NoSqlInjectionDetails" do optional :start_idx, :int32, 1 optional :end_idx, :int32, 2 optional :boundary_overrun_idx, :int32, 3 optional :input_boundary_idx, :int32, 4 optional :query, :string, 5 end add_message "contrast.api.dtm.SsrfDetails" do optional :url, :string, 1 end add_message "contrast.api.dtm.VirtualPatchDetails" do optional :uuid, :string, 1 end add_message "contrast.api.dtm.XssDetails" do optional :input, :string, 1 repeated :matches, :message, 2, "contrast.api.dtm.XssMatch" end add_message "contrast.api.dtm.XssMatch" do optional :evidence_start_ms, :int64, 1 optional :evidence, :string, 2 optional :offset, :int32, 3 end add_message "contrast.api.dtm.XxeDetails" do optional :xml, :string, 1 repeated :declared_entities, :message, 2, "contrast.api.dtm.XxeMatch" repeated :entities_resolved, :message, 3, "contrast.api.dtm.XxeWrapper" end add_message "contrast.api.dtm.XxeMatch" do optional :start_idx, :int32, 1 optional :end_idx, :int32, 2 end add_message "contrast.api.dtm.XxeWrapper" do optional :system_id, :string, 1 optional :public_id, :string, 2 end add_message "contrast.api.dtm.UserInput" do optional :path, :string, 2 optional :key, :string, 3 optional :value, :string, 4 optional :input_type, :enum, 5, "contrast.api.dtm.UserInput.InputType" optional :document_type, :enum, 6, "contrast.api.dtm.HttpRequest.DocumentType" repeated :matcher_ids, :string, 7 end add_enum "contrast.api.dtm.UserInput.InputType" do value :UNDEFINED_TYPE, 0 value :BODY, 1 value :COOKIE_NAME, 2 value :COOKIE_VALUE, 3 value :HEADER, 4 value :PARAMETER_NAME, 5 value :PARAMETER_VALUE, 6 value :QUERYSTRING, 7 value :URI, 8 value :SOCKET, 9 value :JSON_VALUE, 10 value :JSON_ARRAYED_VALUE, 11 value :MULTIPART_CONTENT_TYPE, 16 value :MULTIPART_VALUE, 17 value :MULTIPART_FIELD_NAME, 18 value :MULTIPART_NAME, 19 value :XML_VALUE, 20 value :DWR_VALUE, 21 value :METHOD, 22 value :REQUEST, 23 value :UNKNOWN, 99 end add_message "contrast.api.dtm.StackTraceElement" do optional :declaring_class, :string, 1 optional :method_name, :string, 2 optional :file_name, :string, 3 optional :line_number, :int32, 4 end add_message "contrast.api.dtm.TraceEvent" do optional :action, :enum, 1, "contrast.api.dtm.TraceEvent.Action" optional :type, :enum, 2, "contrast.api.dtm.TraceEvent.EventType" optional :timestamp_ms, :int64, 3 optional :thread, :string, 4 optional :signature, :message, 6, "contrast.api.dtm.TraceEventSignature" optional :field_name, :string, 7 optional :context, :string, 8 optional :code, :string, 9 optional :object, :message, 16, "contrast.api.dtm.TraceEventObject" optional :ret, :message, 17, "contrast.api.dtm.TraceEventObject" repeated :args, :message, 18, "contrast.api.dtm.TraceEventObject" repeated :stack, :message, 19, "contrast.api.dtm.TraceStack" repeated :event_sources, :message, 20, "contrast.api.dtm.TraceEventSource" optional :source, :string, 21 optional :target, :string, 22 repeated :taint_ranges, :message, 23, "contrast.api.dtm.TraceTaintRange" optional :object_id, :int64, 24 repeated :parent_object_ids, :message, 25, "contrast.api.dtm.ParentObjectId" end add_enum "contrast.api.dtm.TraceEvent.Action" do value :CREATION, 0 value :PROPAGATION, 1 value :TRIGGER, 2 value :TAG, 3 value :A2A, 4 value :A2P, 5 value :A2O, 6 value :A2R, 7 value :O2A, 8 value :O2P, 9 value :O2O, 10 value :O2R, 11 value :P2A, 12 value :P2P, 13 value :P2O, 14 value :P2R, 15 end add_enum "contrast.api.dtm.TraceEvent.EventType" do value :TYPE_METHOD, 0 value :TYPE_PROPAGATION, 1 value :TYPE_TAG, 2 end add_message "contrast.api.dtm.TraceEventSignature" do optional :return_type, :string, 1 optional :class_name, :string, 2 optional :method_name, :string, 3 repeated :arg_types, :string, 4 optional :constructor, :bool, 5 optional :void_method, :bool, 6 optional :flags, :int32, 7 end add_message "contrast.api.dtm.TraceEventSource" do optional :type, :string, 1 optional :name, :string, 2 end add_message "contrast.api.dtm.TraceEventObject" do optional :tracked, :bool, 1 optional :value, :string, 2 repeated :ranges, :message, 3, "contrast.api.dtm.TraceTaintRange" end add_message "contrast.api.dtm.TraceTaintRange" do optional :tag, :string, 1 optional :range, :string, 2 end add_message "contrast.api.dtm.ParentObjectId" do optional :id, :int64, 1 end add_message "contrast.api.dtm.TraceStack" do optional :signature, :string, 1 optional :declaring_class, :string, 2 optional :method_name, :string, 3 optional :file_name, :string, 4 optional :line_number, :int32, 5 optional :type, :string, 6 optional :eval, :string, 7 end add_message "contrast.api.dtm.RouteCoverage" do optional :verb, :string, 1 optional :url, :string, 2 optional :route, :string, 3 optional :count, :int32, 4 end add_message "contrast.api.dtm.ObservedRoute" do optional :signature, :string, 1 optional :url, :string, 2 optional :verb, :string, 3 optional :session_id, :string, 4 repeated :sources, :message, 5, "contrast.api.dtm.TraceEventSource" end add_message "contrast.api.dtm.CmdiSinkRequest" do end add_message "contrast.api.dtm.CmdiSinkResponse" do end add_message "contrast.api.dtm.PtSinkRequest" do end add_message "contrast.api.dtm.PtSinkResponse" do end end module Contrast module Api module Dtm Message = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Message").msgclass Poll = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Poll").msgclass Noop = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Noop").msgclass ServerActivity = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.ServerActivity").msgclass AgentStartup = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.AgentStartup").msgclass ApplicationCreate = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.ApplicationCreate").msgclass ApplicationUpdate = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.ApplicationUpdate").msgclass Activity = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Activity").msgclass Finding = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Finding").msgclass DynamicSource = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.DynamicSource").msgclass PossibleSecurityControl = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.PossibleSecurityControl").msgclass View = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.View").msgclass Platform = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Platform").msgclass ArchitectureComponent = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.ArchitectureComponent").msgclass Library = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Library").msgclass LibraryUsageUpdate = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.LibraryUsageUpdate").msgclass Address = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Address").msgclass RawRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.RawRequest").msgclass RawResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.RawResponse").msgclass HttpRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.HttpRequest").msgclass HttpRequest::Authentication = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.HttpRequest.Authentication").enummodule HttpRequest::DocumentType = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.HttpRequest.DocumentType").enummodule RpcStatus = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.RpcStatus").msgclass RpcStatus::Code = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.RpcStatus.Code").enummodule SqliSinkRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.SqliSinkRequest").msgclass SqliSinkRequest::Dialect = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.SqliSinkRequest.Dialect").enummodule SqliSinkResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.SqliSinkResponse").msgclass HttpResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.HttpResponse").msgclass SimplePair = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.SimplePair").msgclass Pair = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Pair").msgclass AttackResult = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.AttackResult").msgclass AttackResult::ResponseType = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.AttackResult.ResponseType").enummodule RaspRuleSample = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.RaspRuleSample").msgclass EndpointBanDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.EndpointBanDetails").msgclass ModSecurityDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.ModSecurityDetails").msgclass ModSecurityLog = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.ModSecurityLog").msgclass BruteForceDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.BruteForceDetails").msgclass BotBlockerDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.BotBlockerDetails").msgclass CmdInjectionDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.CmdInjectionDetails").msgclass CmdInjectionSemanticAnalysisDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.CmdInjectionSemanticAnalysisDetails").msgclass CmdInjectionSemanticAnalysisDetails::Finding = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.CmdInjectionSemanticAnalysisDetails.Finding").enummodule CsrfDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.CsrfDetails").msgclass CveDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.CveDetails").msgclass Cve20170898Details = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Cve20170898Details").msgclass Cve201714033Details = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Cve201714033Details").msgclass Cve201714064Details = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Cve201714064Details").msgclass Cve201717405Details = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.Cve201717405Details").msgclass HttpMethodTamperingDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.HttpMethodTamperingDetails").msgclass UntrustedDeserializationDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.UntrustedDeserializationDetails").msgclass ElInjectionDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.ElInjectionDetails").msgclass IpBlacklistDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.IpBlacklistDetails").msgclass MarkOfTheBeastDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.MarkOfTheBeastDetails").msgclass PaddingOracleDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.PaddingOracleDetails").msgclass PathTraversalDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.PathTraversalDetails").msgclass PathTraversalSemanticAnalysisDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.PathTraversalSemanticAnalysisDetails").msgclass PathTraversalSemanticAnalysisDetails::Finding = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.PathTraversalSemanticAnalysisDetails.Finding").enummodule ReDosDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.ReDosDetails").msgclass SsjsInjectionDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.SsjsInjectionDetails").msgclass SqlInjectionDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.SqlInjectionDetails").msgclass SqlInjectionSemanticAnalysisDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.SqlInjectionSemanticAnalysisDetails").msgclass SqlInjectionSemanticAnalysisDetails::Finding = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.SqlInjectionSemanticAnalysisDetails.Finding").enummodule NoSqlInjectionDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.NoSqlInjectionDetails").msgclass SsrfDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.SsrfDetails").msgclass VirtualPatchDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.VirtualPatchDetails").msgclass XssDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.XssDetails").msgclass XssMatch = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.XssMatch").msgclass XxeDetails = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.XxeDetails").msgclass XxeMatch = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.XxeMatch").msgclass XxeWrapper = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.XxeWrapper").msgclass UserInput = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.UserInput").msgclass UserInput::InputType = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.UserInput.InputType").enummodule StackTraceElement = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.StackTraceElement").msgclass TraceEvent = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.TraceEvent").msgclass TraceEvent::Action = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.TraceEvent.Action").enummodule TraceEvent::EventType = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.TraceEvent.EventType").enummodule TraceEventSignature = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.TraceEventSignature").msgclass TraceEventSource = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.TraceEventSource").msgclass TraceEventObject = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.TraceEventObject").msgclass TraceTaintRange = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.TraceTaintRange").msgclass ParentObjectId = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.ParentObjectId").msgclass TraceStack = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.TraceStack").msgclass RouteCoverage = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.RouteCoverage").msgclass ObservedRoute = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.ObservedRoute").msgclass CmdiSinkRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.CmdiSinkRequest").msgclass CmdiSinkResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.CmdiSinkResponse").msgclass PtSinkRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.PtSinkRequest").msgclass PtSinkResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("contrast.api.dtm.PtSinkResponse").msgclass end end end