code: def authenticate(self, *args, **kwargs):
          
          if not self.flags & BFD_FLAG_AUTH_PRESENT or \
                  not issubclass(self.auth_cls.__class__, BFDAuth):
              return False
  
          return self.auth_cls.authenticate(self, *args, **kwargs)
docs: Authenticate this packet.
  
          Returns a boolean indicates whether the packet can be authenticated
          or not.
  
          Returns ``False`` if the Authentication Present (A) is not set in the
          flag of this packet.
  
          Returns ``False`` if the Authentication Section for this packet is not
          present.
  
          For the description of the arguemnts of this method, refer to the
          authentication method of the Authentication Section classes.