anchor.diff:  		     [{statuscode, 401}]),
       
       true = unblock_user(Node, "two", Port, OpenDir).
  +
  +%%-------------------------------------------------------------------------
  +
  +disk_log_internal() ->
  +    ["Test mod_disk_log"].
  +
  +disk_log_internal(Config) ->
  +    Version = proplists:get_value(http_version, Config),
  +    Request = "GET /" ++ integer_to_list(rand:uniform(1000000)) ++ " ",
  +    ok = http_status(Request, Config, [{statuscode, 404}]),
  +    Log = proplists:get_value(transfer_log, Config),
  +    Match = list_to_binary(Request ++ Version),
  +    disk_log_internal1(Log, Match, disk_log:chunk(Log, start)).
  +disk_log_internal1(_, _, eof) ->
  +    ct:fail(eof);
  +disk_log_internal1(Log, Match, {Cont, [H | T]}) ->
  +    case binary:match(H, Match) of
  +        nomatch ->
  +            disk_log_internal1(Log, Match, {Cont, T});
  +        _ ->
  +            ok
  +    end;
  +disk_log_internal1(Log, Match, {Cont, []}) ->
  +    disk_log_internal1(Log, Match, disk_log:chunk(Log, Cont)).
  +
  +disk_log_exists() ->
  +    ["Test mod_disk_log with existing logs"].
  +
  +disk_log_exists(Config) ->
  +    Log = proplists:get_value(transfer_log, Config),
  +    Self = self(),
  +    Node = node(),
  +    Log = proplists:get_value(transfer_log, Config),
  +    {_, [{bogus, Node, Self} | _]} = disk_log:chunk(Log, start).
  +
  +disk_log_bad_size() ->
  +    ["Test mod_disk_log with existing log, missing .siz"].
  +
  +disk_log_bad_size(Config) ->
  +    Log = proplists:get_value(transfer_log, Config),
  +    Self = self(),
  +    Node = node(),
  +    Log = proplists:get_value(transfer_log, Config),
  +    {_, [{bogus, Node, Self} | _]} = disk_log:chunk(Log, start).
  +
  +disk_log_bad_file() ->
  +    ["Test mod_disk_log with bad file"].
  +
  +disk_log_bad_file(Config) ->
  +    Log = proplists:get_value(transfer_log, Config),
  +    Version = proplists:get_value(http_version, Config),
  +    Request = "GET /" ++ integer_to_list(rand:uniform(1000000)) ++ " ",
  +    ok = http_status(Request, Config, [{statuscode, 404}]),
  +    Log = proplists:get_value(transfer_log, Config),
  +    Match = list_to_binary(Request ++ Version),
  +    {_, [H | _]} = disk_log:chunk(Log, start),
  +    {_, _} = binary:match(H, Match).
   
   %%-------------------------------------------------------------------------
   non_disturbing_reconfiger_dies(Config) when is_list(Config) -> 
  
positive.code: init_per_group(auth_api_mnesia, Config) ->
      start_mnesia(proplists:get_value(node, Config)),
      [{auth_prefix, "mnesia_"} | Config];
  init_per_group(_, Config) ->
      Config.
  
  
negative.code:     create_range_data(DocRoot),
      dbg(range, Config, init);
  
  init_per_testcase(disk_log_internal, Config0) ->
      ok = start_apps(http_logging),
      Config1 = init_httpd(http_logging, [{type, ip_comm} | Config0]),
      ct:timetrap({seconds, 20}),
      dbg(disk_log_internal, Config1, init);
  
  init_per_testcase(disk_log_exists, Config0) ->
      ServerRoot = proplists:get_value(server_root, Config0),
      Filename = ServerRoot ++ "/httpd_log_transfer",
      {ok, Log} = disk_log:open([{name, Filename}, {file, Filename},
              {repair, truncate}, {format, internal},
              {type, wrap}, {size, {1048576, 5}}]),
      ok = disk_log:log(Log, {bogus, node(), self()}),
      ok = disk_log:close(Log),
      ok = start_apps(http_logging),
      Config1 = init_httpd(http_logging, [{type, ip_comm} | Config0]),
      ct:timetrap({seconds, 20}),
      dbg(disk_log_internal, Config1, init);
  
  init_per_testcase(disk_log_bad_size, Config0) ->
      ServerRoot = proplists:get_value(server_root, Config0),
      Filename = ServerRoot ++ "/httpd_log_transfer",
      {ok, Log} = disk_log:open([{name, Filename}, {file, Filename},
              {repair, truncate}, {format, internal},
              {type, wrap}, {size, {1048576, 5}}]),
      ok = disk_log:log(Log, {bogus, node(), self()}),
      ok = disk_log:close(Log),
      ok = file:delete(Filename ++ ".siz"),
      ok = start_apps(http_logging),
      Config1 = init_httpd(http_logging, [{type, ip_comm} | Config0]),
      ct:timetrap({seconds, 20}),
      dbg(disk_log_internal, Config1, init);
  
  init_per_testcase(disk_log_bad_file, Config0) ->
      ServerRoot = proplists:get_value(server_root, Config0),
      Filename = ServerRoot ++ "/httpd_log_transfer",
      ok = file:write_file(Filename ++ ".1", <<>>),
      ok = start_apps(http_logging),
      Config1 = init_httpd(http_logging, [{type, ip_comm} | Config0]),
      ct:timetrap({seconds, 20}),
      dbg(disk_log_internal, Config1, init);
  
  init_per_testcase(Case, Config) ->
      ct:timetrap({seconds, 20}),
      dbg(Case, Config, init).
  
  end_per_testcase(Case, Config) when
          Case == disk_log_internal;
          Case == disk_log_exists;
          Case == disk_log_bad_size;
          Case == disk_log_bad_file ->
      inets:stop(),
      dbg(Case, Config, 'end');
  
  end_per_testcase(Case, Config) ->
      dbg(Case, Config, 'end').
  