anchor.diff:      false;
   ip_match_1(PeerAdr, [PeerAdr|_IPs]) ->
       true;
  -ip_match_1(PeerAdr, [Local|IPs]) when Local =:= "local"; Local =:= local ->
  +ip_match_1(PeerAdr, [Local|IPs]) when Local =:= "local"; Local =:= local; Local =:= <<"local">> ->
       case is_local(PeerAdr) of
           true -> true;
           false -> ip_match_1(PeerAdr, IPs)
       end;
  -ip_match_1(_PeerAdr, [Any|_]) when Any =:= "any"; Any =:= any ->
  +ip_match_1(_PeerAdr, [Any|_]) when Any =:= "any"; Any =:= any; Any =:= <<"any">> ->
       true;
  -ip_match_1(_PeerAdr, [None|_]) when None =:= "none"; None =:= none ->
  -    false;
  +ip_match_1(PeerAdr, [None|IPs]) when None =:= "none"; None =:= none; None =:= <<"none">> ->
  +    ip_match_1(PeerAdr, IPs);
   ip_match_1(PeerAdr, [{MatchAdr,BitsNr}|IPs]) when is_tuple(MatchAdr), is_integer(BitsNr) ->
       case ip_match_mask(PeerAdr, MatchAdr, BitsNr) of
           true -> true;
  
positive.code: %% @author Marc Worrell
  %% @copyright 2012 Marc Worrell
  %% @doc Misc utility URL functions for zotonic
  
  %% Copyright 2012 Marc Worrell
  %%
  %% Licensed under the Apache License, Version 2.0 (the "License");
  %% you may not use this file except in compliance with the License.
  
negative.code:     false;
  ip_match(_IP, []) ->
      false;
  ip_match(IP, Local) when Local =:= local; Local =:= "local"; Local =:= <<"local">> ->
      {ok, IP1} = parse_address(IP),
      is_local(IP1);
  ip_match(_IP, Any) when Any =:= any; Any =:= "any"; Any =:= <<"any">> ->
      true;
  ip_match(_IP, None) when None =:= none; None =:= "none"; None =:= <<"none">> ->
      false;
  ip_match(IP, [IP|_IPs]) ->
      true;
  