Spies = make([]string, 0)
SpiesM sync.RWMutex
- Restricted = make(map[string][]string)
+ Restricted = make(map[string][]string)
RestrictedM sync.RWMutex
)
)
func readLinesFromFIFO(p string) []string {
- fd, err := os.OpenFile(p, os.O_RDONLY, os.FileMode(0666))
+ fd, err := os.OpenFile(p, os.O_RDONLY, os.FileMode(0o666))
if err != nil {
log.Fatalln(err)
}
func del(l *sync.RWMutex, deleter func(string), p string) {
for {
- fd, err := os.OpenFile(p, os.O_RDONLY, os.FileMode(0666))
+ fd, err := os.OpenFile(p, os.O_RDONLY, os.FileMode(0o666))
if err != nil {
log.Fatalln(err)
}
func list(l *sync.RWMutex, m map[string]string, p string) {
for {
- fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0666))
+ fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0o666))
if err != nil {
log.Fatalln(err)
}
func listHTTPAuth(p string) {
for {
- fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0666))
+ fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0o666))
if err != nil {
log.Fatalln(err)
}
func listTLSAuth(p string) {
for {
- fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0666))
+ fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0o666))
if err != nil {
log.Fatalln(err)
}
caches.TLSAuthCacheM.RLock()
+ var cert *x509.Certificate
for host, tlsCert := range caches.TLSAuthCache {
subj := "NONE"
if len(tlsCert.Certificate) != 0 {
- cert, err := x509.ParseCertificate(tlsCert.Certificate[0])
+ cert, err = x509.ParseCertificate(tlsCert.Certificate[0])
if err != nil {
log.Fatalln(err)
}
func logger(c chan string, p string) {
tai := new(tai64n.TAI64N)
for {
- fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0666))
+ fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0o666))
if err != nil {
log.Fatalln(err)
}
func listRestricted(p string) {
for {
- fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0666))
+ fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0o666))
if err != nil {
log.Fatalln(err)
}
func listSpies(p string) {
for {
- fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0666))
+ fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0o666))
if err != nil {
log.Fatalln(err)
}
func listWARCs(p string) {
for {
- fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0666))
+ fd, err := os.OpenFile(p, os.O_WRONLY|os.O_APPEND, os.FileMode(0o666))
if err != nil {
log.Fatalln(err)
}
!strings.Contains(req.Header.Get("Accept"), ContentTypeGemini) {
w.Header().Add("Content-Type", "text/html")
w.WriteHeader(http.StatusOK)
- raw, err := io.ReadAll(br)
+ var raw []byte
+ raw, err = io.ReadAll(br)
if err != nil {
log.Printf("%s: can not read response body: %+v\n", req.URL, err)
return false, err
}
func isFeeder(req *http.Request) bool {
- if strings.Contains(req.Header.Get("User-Agent"), "stargrave.org-feeder/") {
- return true
- }
- return false
+ return strings.Contains(req.Header.Get("User-Agent"), "stargrave.org-feeder/")
}
func RoundRedirectHTML(
tlsCerts = append(tlsCerts, nil)
for i, ent := range ents {
p := filepath.Join(CCerts, ent.Name())
- _, cert, err := ucspi.CertificateFromFile(p)
+ var cert *x509.Certificate
+ _, cert, err = ucspi.CertificateFromFile(p)
if err != nil {
log.Fatalln(err)
}
- prv, err := ucspi.PrivateKeyFromFile(p)
+ var prv any
+ prv, err = ucspi.PrivateKeyFromFile(p)
if err != nil {
log.Fatalln(err)
}
fifos.LogVarious <- fmt.Sprintf(
"%s %s\tHTTP authorization required", req.Method, req.URL.Host,
)
- user, pass, err := authDialog(host, resp.Header.Get("WWW-Authenticate"))
+ var user, pass string
+ user, pass, err = authDialog(host, resp.Header.Get("WWW-Authenticate"))
if err != nil {
caches.HTTPAuthCacheM.Unlock()
fifos.LogErr <- fmt.Sprintf("%s\t%s", req.URL.Host, err.Error())
}
}
- for _, round := range []Round{
- rounds.RoundDenyFonts,
- rounds.RoundTranscodeWebP,
- rounds.RoundTranscodeJXL,
- rounds.RoundTranscodeAVIF,
- rounds.RoundRedirectHTML,
- } {
- cont, err := round(host, resp, w, req)
- if err != nil {
- http.Error(w, err.Error(), http.StatusBadGateway)
- return
- }
- if !cont {
- return
+ {
+ var cont bool
+ for _, round := range []Round{
+ rounds.RoundDenyFonts,
+ rounds.RoundTranscodeWebP,
+ rounds.RoundTranscodeJXL,
+ rounds.RoundTranscodeAVIF,
+ rounds.RoundRedirectHTML,
+ } {
+ cont, err = round(host, resp, w, req)
+ if err != nil {
+ http.Error(w, err.Error(), http.StatusBadGateway)
+ return
+ }
+ if !cont {
+ return
+ }
}
}
)
type CompressedReader struct {
- cmd *exec.Cmd
- fd *os.File
- stdout io.ReadCloser
- offsets []Offset
-
+ stdout io.ReadCloser
+ cmd *exec.Cmd
+ fd *os.File
offW *os.File
+ offsets []Offset
offReader sync.WaitGroup
}
cmd.Stdin = io.MultiReader(bytes.NewReader(dict), fd)
}
if offsets == nil {
- offR, offW, err := os.Pipe()
+ var offR, offW *os.File
+ offR, offW, err = os.Pipe()
if err != nil {
fd.Close()
return nil, err
gr := GZIPReader{r: r}
go func() {
z.Multistream(false)
- var offset, offsetPrev int64
+ var offset, offsetPrev, written int64
for {
- written, err := io.Copy(w, z)
+ written, err = io.Copy(w, z)
if err != nil {
w.CloseWithError(err)
return
Path string
rrr RawRecordReader
br *bufio.Reader
- offset int64
prevRec *Record
offsets []Offset
+ offset int64
}
func NewReader(warcPath string) (*Reader, error) {
hdrLen := len(line)
hdr := NewHeader()
for {
- line, err := r.br.ReadString('\n')
+ var line string
+ line, err = r.br.ReadString('\n')
if err != nil {
return nil, nil, err
}
)
type Record struct {
- WARCPath string
- Offset int64
- Size int64
-
- Hdr Header
- HdrLen int
- HdrLines []string
-
+ WARCPath string
+ Hdr Header
+ HdrLines []string
Continuations []*Record
+ Offset int64
+ Size int64
+ HdrLen int
}
func (rec *Record) URI() string {
var uris map[string]*Record
var offsets []Offset
dec := gob.NewDecoder(fd)
- if err := dec.Decode(&uris); err != nil {
+ if err = dec.Decode(&uris); err != nil {
return err
}
- if err := dec.Decode(&offsets); err != nil {
+ if err = dec.Decode(&offsets); err != nil {
return err
}
WARCsM.Lock()
log.Println("loaded marshalled index:", warcPath+IndexExt)
return nil
}
- if err != nil && !errors.Is(err, fs.ErrNotExist) {
+ if !errors.Is(err, fs.ErrNotExist) {
return err
}
r, err := NewReader(warcPath)
fd, err := os.OpenFile(
p+tmpSuffix,
os.O_WRONLY|os.O_CREATE|os.O_EXCL,
- os.FileMode(0666),
+ os.FileMode(0o666),
)
if err != nil {
return err