--- upstream/dynamips-0.2.7/frame_relay.c 2007/10/06 16:29:14 10 +++ upstream/dynamips-0.2.8-RC1/frame_relay.c 2007/10/06 16:33:40 11 @@ -23,9 +23,6 @@ #define DEBUG_FRSW 0 -/* Number of LMI trailing bytes */ -#define LMI_TRAILING_SIZE 3 - extern FILE *log_file; /* ANSI LMI packet header */ @@ -62,12 +59,10 @@ frsw_conn_t *sc; u_int dlci; - if ((len <= (sizeof(lmi_ansi_hdr) + LMI_TRAILING_SIZE)) || + if ((len <= sizeof(lmi_ansi_hdr)) || memcmp(pkt,lmi_ansi_hdr,sizeof(lmi_ansi_hdr))) return(-1); - len -= LMI_TRAILING_SIZE; - #if DEBUG_FRSW m_log(input->name,"received an ANSI LMI packet:\n"); mem_dump(log_file,pkt,len); @@ -174,9 +169,6 @@ } } - /* it seems that a trailing is required */ - memset(pres,0,LMI_TRAILING_SIZE); - pres += LMI_TRAILING_SIZE; rlen = pres - resp; #if DEBUG_FRSW @@ -446,7 +438,7 @@ /* Release NIOs */ frsw_release_vc(p); - mp_free(vc); + mp_free(p); return(0); } }