wip: random half done-junk

This commit is contained in:
AJ ONeal 2026-03-01 19:05:26 -07:00
parent beded855a2
commit c8a95588ff
No known key found for this signature in database
2 changed files with 39 additions and 0 deletions

View File

@ -23,6 +23,8 @@ func TestCredentialCreationAndVerification(t *testing.T) {
{"service2", "acme", []string{"plain"}, nil, "token2", false, true},
{"service3", "user3", []string{"pbkdf2", "1000", "16", "SHA-256"}, nil, "token3", false, false},
{"service4", "user4", []string{"bcrypt"}, []string{"audit", "triage"}, "token4", false, false},
// {"token", "api~vkdAIZ2O", []string{"aes-128-gcm"}, nil, "api1", true, true},
// {"token", "api~b5ZF2sRQ", []string{"aes-128-gcm"}, nil, "api2", true, true},
{"login", "user1", []string{"pbkdf2", "1000", "16", "SHA-256"}, nil, "pass1", true, false},
{"login", "user2", []string{"bcrypt"}, nil, "pass2", true, false},
{"login", "user3", []string{"aes-128-gcm"}, nil, "pass3", true, true},

View File

@ -82,6 +82,43 @@ var FIELDS = Fields{
R_LAST: 10,
}
func GetFieldIndex(header []string, name string) int {
name = strings.ToLower(name)
for i, h := range header {
h = strings.ToLower(h)
if strings.EqualFold(strings.TrimSpace(h), name) {
return i
}
}
return -1
}
func GetFieldIndexWithPrefix(header []string, pre string) int {
pre = strings.ToLower(pre)
for i, h := range header {
h = strings.TrimSpace(strings.ToLower(h))
if HasPrefixFold(h, pre) {
return i
}
}
return -1
}
func GetFieldLastIndexWithPrefix(header []string, pre string) int {
pre = strings.ToLower(pre)
for i := len(header) - 1; i >= 0; i-- {
h := strings.TrimSpace(strings.ToLower(header[i]))
if HasPrefixFold(h, pre) {
return i
}
}
return -1
}
func HasPrefixFold(s, prefix string) bool {
return len(s) >= len(prefix) && strings.EqualFold(s[:len(prefix)], prefix)
}
// ---------- 2. CSV → []Rule ----------
func LoadRules(csvr *csv.Reader) ([]Rule, error) {
// first line is the header