LCOV - code coverage report
Current view: top level - bgp - bgp_message_builder.h (source / functions) Hit Total Coverage
Test: OpenSDN C/C++ coverage (all TARGET_SET jobs) Lines: 0 1 0.0 %
Date: 2026-06-22 02:21:21 Functions: 0 2 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*
       2             :  * Copyright (c) 2013 Juniper Networks, Inc. All rights reserved.
       3             :  */
       4             : 
       5             : #ifndef SRC_BGP_BGP_MESSAGE_BUILDER_H_
       6             : #define SRC_BGP_BGP_MESSAGE_BUILDER_H_
       7             : 
       8             : #include <string>
       9             : 
      10             : #include "bgp/bgp_proto.h"
      11             : #include "bgp/message_builder.h"
      12             : 
      13             : class RibOut;
      14             : 
      15             : class BgpMessage : public Message {
      16             : public:
      17             :     BgpMessage();
      18             :     virtual ~BgpMessage();
      19             :     virtual bool Start(const RibOut *ribout, bool cache_routes,
      20             :                        const RibOutAttr *roattr, const BgpRoute *route);
      21             :     virtual bool AddRoute(const BgpRoute *route, const RibOutAttr *roattr);
      22             :     virtual void Finish();
      23             :     virtual const uint8_t *GetData(IPeerUpdate *peer, size_t *lenp,
      24             :                                    const std::string **msg_str,
      25             :                                    std::string *temp);
      26             : 
      27             : private:
      28             :     virtual void Reset();
      29             :     bool StartReach(const RibOut *ribout, const RibOutAttr *roattr,
      30             :                     const BgpRoute *route);
      31             :     bool StartUnreach(const BgpRoute *route);
      32             :     bool UpdateLength(const char *tag, int size, int delta);
      33             : 
      34             :     const BgpTable *table_;
      35             :     EncodeOffsets encode_offsets_;
      36             :     uint8_t data_[BgpProto::kMaxMessageSize];
      37             :     size_t datalen_;
      38             : 
      39             :     DISALLOW_COPY_AND_ASSIGN(BgpMessage);
      40             : };
      41             : 
      42             : class BgpMessageBuilder : public MessageBuilder {
      43             : public:
      44             :     BgpMessageBuilder();
      45             :     virtual Message *Create() const;
      46           0 :     virtual ~BgpMessageBuilder(){};
      47             : 
      48             : private:
      49             :     DISALLOW_COPY_AND_ASSIGN(BgpMessageBuilder);
      50             : };
      51             : 
      52             : #endif  // SRC_BGP_BGP_MESSAGE_BUILDER_H_

Generated by: LCOV version 1.14