anchor.diff:    end,
     
     % check for git-daemon-export-ok file
  +  GitDaemonExportOkFilePath = filename:join([FullPath, "git-daemon-export-ok"]),
  +  case file_exists(GitDaemonExportOkFilePath) of
  +    false -> throw({permission_denied, GitDaemonExportOkFilePath});
  +    true -> ok
  +  end,
     
     % make the port
     Command = "git upload-pack " ++ FullPath,
  
positive.code: 
  handle_upload_pack_nosuchrepo(Sock, Repo) ->
    io:format("no such repo: ~p~n", [Repo]),
    ok = gen_tcp:close(Sock).
  
  gather_out(Port) ->
  
negative.code:     handle_upload_pack_impl(Sock, MethodSpec)
    catch
      throw:{no_such_repo, Repo} ->
        handle_upload_pack_nosuchrepo(Sock, Repo);
      throw:{permission_denied, Repo} ->
        handle_upload_pack_permission_denied(Sock, Repo)
    end.
  
  handle_upload_pack_impl(Sock, MethodSpec) ->
  