Expression 'ttl & ~(255 >> 0)' is always zero, because right operand
has 8 trailing zero bits, which is greater or equal than the size
of the left operand == 8 bits.
Found by RASU JSC.
Signed-off-by: Maks Mishin <maks.mishinFZ@gmail.com>
Reviewed-by: Guillaume Nault <gnault@redhat.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
NEXT_ARG();
ret = get_u8(&ttl, *argv, 10);
- if (ret < 0 || ttl & ~(MPLS_LS_TTL_MASK >> MPLS_LS_TTL_SHIFT)) {
+ if (ret < 0) {
fprintf(stderr, "Illegal \"ttl\"\n");
return -1;
}
}
mpls_format_old = true;
ret = get_u8(&ttl, *argv, 10);
- if (ret < 0 || ttl & ~(MPLS_LS_TTL_MASK >> MPLS_LS_TTL_SHIFT)) {
+ if (ret < 0) {
fprintf(stderr, "Illegal \"mpls_ttl\"\n");
return -1;
}