mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-05-20 10:52:31 +02:00
32 lines
1018 B
PHP
32 lines
1018 B
PHP
function ICMP6_FILTER_WILLPASS(__type: Integer; const filterp: TICMP6_Filter): Boolean;
|
|
begin
|
|
Result := (filterp.data[__type shr 5] and (1 shl (__type and 31))) = 0;
|
|
end;
|
|
|
|
function ICMP6_FILTER_WILLBLOCK(__type: Integer; const filterp: TICMP6_Filter): Boolean;
|
|
begin
|
|
Result := (filterp.data[__type shr 5] and (1 shl (__type and 31))) <> 0;
|
|
end;
|
|
|
|
procedure ICMP6_FILTER_SETPASS(__type: Integer; var filterp: TICMP6_Filter);
|
|
begin
|
|
filterp.data[__type shr 5] := filterp.data[__type shr 5] and not
|
|
(1 shl (__type and 31));
|
|
end;
|
|
|
|
procedure ICMP6_FILTER_SETBLOCK(__type: Integer; var filterp: TICMP6_Filter);
|
|
begin
|
|
filterp.data[__type shr 5] := filterp.data[__type shr 5] or
|
|
(1 shl (__type and 31));
|
|
end;
|
|
|
|
procedure ICMP6_FILTER_SETPASSALL(var filterp: TICMP6_Filter);
|
|
begin
|
|
FillChar(filterp, SizeOf(filterp), 0);
|
|
end;
|
|
|
|
procedure ICMP6_FILTER_SETBLOCKALL(var filterp: TICMP6_Filter);
|
|
begin
|
|
FillChar(filterp, SizeOf(filterp), $FF);
|
|
end;
|