openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

rlink.h (1902B)


      1 /* 
      2  * 
      3  * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file.
      4  * 
      5  * Copyright 2007-2019 Broadcom Inc. All rights reserved.
      6  *
      7  * File:        rlink.h
      8  * Purpose:     RLINK protocol interfaces
      9  */
     10 
     11 #ifndef   _BCM_SRC_RLINK_H
     12 #define   _BCM_SRC_RLINK_H
     13 
     14 #include <shared/idents.h>
     15 
     16 #define	RLINK_CLIENT_ID		SHARED_CLIENT_ID_RLINK
     17 
     18 typedef enum {
     19     RLINK_MSG_ADD,		/* scan add (client to server) */
     20     RLINK_MSG_DELETE,		/* scan delete (client to server) */
     21     RLINK_MSG_NOTIFY,		/* run handlers (server to client) */
     22     RLINK_MSG_TRAVERSE          /* traverse processing */
     23 } rlink_msg_t;
     24 
     25 typedef enum {
     26     RLINK_TYPE_LINK = 1,        /* linkscan */
     27     RLINK_TYPE_AUTH,            /* auth unauth callback */
     28     RLINK_TYPE_L2,              /* l2 notify */
     29     RLINK_TYPE_RX,              /* RX tunnelling */
     30     RLINK_TYPE_ADD,		/* Msg add processing */
     31     RLINK_TYPE_DELETE,		/* Msg delete processing */
     32     RLINK_TYPE_OAM,             /* oam event */
     33     RLINK_TYPE_BFD,             /* bfd event */
     34     RLINK_TYPE_FABRIC,          /* fabric event */
     35     RLINK_TYPE_START,           /* traverse start c>s */
     36     RLINK_TYPE_NEXT,            /* traverse next c>s */
     37     RLINK_TYPE_QUIT,            /* traverse quit c>s */
     38     RLINK_TYPE_ERROR,           /* traverse error s>c */
     39     RLINK_TYPE_MORE,            /* traverse more s>c */
     40     RLINK_TYPE_DONE             /* traverse done s>c */
     41 } rlink_type_t;
     42 
     43 
     44 extern uint8 *bcm_rlink_decode(uint8 *buf,
     45                                rlink_msg_t *msgp,
     46                                rlink_type_t *typep,
     47                                int *unitp);
     48 
     49 extern uint8 *bcm_rlink_encode(uint8 *buf,
     50                                rlink_msg_t msg,
     51                                rlink_type_t type,
     52                                int unit);
     53 
     54 
     55 #endif /* _BCM_SRC_RLINK_H */