if err != nil {
return username, err
}
- for _, line := range strings.Split(string(data), "\n") {
+ for line := range strings.SplitSeq(string(data), "\n") {
if len(line) == 0 || line[0] == '#' {
continue
}
}
} else {
gids := []int{}
- for _, g := range strings.Split(*doSetGIDs, ",") {
+ for g := range strings.SplitSeq(*doSetGIDs, ",") {
var gid int
gid, err = strconv.Atoi(g)
if err != nil {
module go.stargrave.org/godlighty
-go 1.21.5
+go 1.24
require (
github.com/davecgh/go-spew v1.1.1
var (
gzPool = sync.Pool{
- New: func() interface{} { return gzip.NewWriter(io.Discard) },
+ New: func() any { return gzip.NewWriter(io.Discard) },
}
zstdPool = sync.Pool{
- New: func() interface{} {
+ New: func() any {
w, err := zstd.NewWriter(
io.Discard,
zstd.WithEncoderLevel(zstd.SpeedDefault),
package godlighty
-import "strings"
+import (
+ "slices"
+ "strings"
+)
func containsDotDot(v string) bool {
if !strings.Contains(v, "..") {
return false
}
- for _, ent := range strings.FieldsFunc(v, isSlashRune) {
- if ent == ".." {
- return true
- }
- }
- return false
+ return slices.Contains(strings.FieldsFunc(v, isSlashRune), "..")
}
func isSlashRune(r rune) bool { return r == '/' || r == '\\' }
panic(err)
}
entries := make([]MIMEEntry, 0)
- for _, line := range strings.Split(string(tsv), "\n") {
+ for line := range strings.SplitSeq(string(tsv), "\n") {
if len(line) == 0 || line[0] == '#' {
continue
}
"fmt"
"log"
"os"
+ "slices"
)
var (
)
func CHIHasTLS13(chi *tls.ClientHelloInfo) bool {
- for _, v := range chi.SupportedVersions {
- if v == tls.VersionTLS13 {
- return true
- }
- }
- return false
+ return slices.Contains(chi.SupportedVersions, tls.VersionTLS13)
}
func CHIHasEdDSA(chi *tls.ClientHelloInfo) bool {
if !CHIHasTLS13(chi) {
return false
}
- for _, ss := range chi.SignatureSchemes {
- if ss == tls.Ed25519 {
- return true
- }
- }
- return false
+ return slices.Contains(chi.SignatureSchemes, tls.Ed25519)
}
func GetCertificate(chi *tls.ClientHelloInfo) (*tls.Certificate, error) {