return ISIS_WARNING;
}
+ if (!(found & TLVFLAG_NLPID))
+ {
+ zlog_warn ("No supported protocols TLV in P2P IS to IS hello");
+ free_tlvs (&tlvs);
+ return ISIS_WARNING;
+ }
+
/* 8.2.5.1 c) Authentication */
if (circuit->passwd.type)
{
tlvs_to_adj_area_addrs (&tlvs, adj);
/* which protocol are spoken ??? */
- if (found & TLVFLAG_NLPID)
- if (tlvs_to_adj_nlpids (&tlvs, adj))
- return ISIS_ERROR;
+ if (tlvs_to_adj_nlpids (&tlvs, adj))
+ {
+ free_tlvs (&tlvs);
+ return ISIS_WARNING;
+ }
/* we need to copy addresses to the adj */
if (found & TLVFLAG_IPV4_ADDR)
goto out;
}
+ if (!(found & TLVFLAG_NLPID))
+ {
+ zlog_warn ("No supported protocols TLV in Level %d LAN IS to IS hello",
+ level);
+ retval = ISIS_WARNING;
+ goto out;
+ }
+
/* Verify authentication, either cleartext of HMAC MD5 */
if (circuit->passwd.type)
{
tlvs_to_adj_area_addrs (&tlvs, adj);
/* which protocol are spoken ??? */
- if (found & TLVFLAG_NLPID)
- tlvs_to_adj_nlpids (&tlvs, adj);
+ if (tlvs_to_adj_nlpids (&tlvs, adj))
+ {
+ retval = ISIS_WARNING;
+ goto out;
+ }
/* we need to copy addresses to the adj */
if (found & TLVFLAG_IPV4_ADDR)