-# We will support users combining storage across multiple machines
-# somehow. Use per-machine refnames to make it easy-to-identify
-# where a message came from
-sub host_head () {
- state $h = do {
- my $x = PublicInbox::ExtSearchIdx::host_ident;
- # Similar rules found in git.git/remote.c::valid_remote_nick
- # and git.git/refs.c::check_refname_component
- $x =~ s!(?:\.lock|/)+\z!!gs; # must not end with ".lock" or "/"
- $x =~ tr/././s; # no dot-dot, collapse them
- $x =~ s/@\{/\@-/gs;
- $x =~ s/\A\./-/s;
- # no "*", ":", "?", "[", "\", "^", "~", SP, TAB; "]" is OK
- $x =~ tr^a-zA-Z0-9!"#$%&'()+,\-.;<=>@]_`{|}^-^c;
- $x
- };
-}
-