3333#include <setjmp.h>
3434#include <stdarg.h>
3535#include <stdio.h>
36+ #include <stdint.h>
3637
3738#include "pcap-int.h"
3839
@@ -10148,6 +10149,8 @@ gen_atmfield_code_internal(compiler_state_t *cstate, int atmfield,
1014810149 bpf_error (cstate , "'vpi' supported only on raw ATM" );
1014910150 if (cstate -> off_vpi == OFFSET_NOT_SET )
1015010151 abort ();
10152+ if (jvalue > UINT8_MAX )
10153+ bpf_error (cstate , "VPI value %u > %u" , jvalue , UINT8_MAX );
1015110154 b0 = gen_ncmp (cstate , OR_LINKHDR , cstate -> off_vpi , BPF_B ,
1015210155 0xffffffffU , jtype , reverse , jvalue );
1015310156 break ;
@@ -10157,6 +10160,8 @@ gen_atmfield_code_internal(compiler_state_t *cstate, int atmfield,
1015710160 bpf_error (cstate , "'vci' supported only on raw ATM" );
1015810161 if (cstate -> off_vci == OFFSET_NOT_SET )
1015910162 abort ();
10163+ if (jvalue > UINT16_MAX )
10164+ bpf_error (cstate , "VCI value %u > %u" , jvalue , UINT16_MAX );
1016010165 b0 = gen_ncmp (cstate , OR_LINKHDR , cstate -> off_vci , BPF_H ,
1016110166 0xffffffffU , jtype , reverse , jvalue );
1016210167 break ;
0 commit comments