Fix (CWE-118): Implicit memory aliasing in for loop.

This commit is contained in:
nemunaire 2023-11-22 09:55:09 +01:00
parent e651a7495f
commit 9f49a689fd
3 changed files with 6 additions and 6 deletions

View File

@ -473,7 +473,7 @@ func buildExerciceFlags(i Importer, exercice *fic.Exercice, exceptions *CheckExc
// Ensure flag ID is unique
for _, ok := flags[flag.Id]; ok; _, ok = flags[flag.Id] {
errs = append(errs, NewFlagError(exercice, &flag, nline+1, fmt.Errorf("identifier already used (%d), using a random one.", flag.Id)))
errs = append(errs, NewFlagError(exercice, &params.Flags[nline], nline+1, fmt.Errorf("identifier already used (%d), using a random one.", flag.Id)))
flag.Id = rand.Int63()
}
@ -491,7 +491,7 @@ func buildExerciceFlags(i Importer, exercice *fic.Exercice, exceptions *CheckExc
// Read dependency to flag
for _, nf := range flag.NeedFlag {
if len(nf.Theme) > 0 {
errs = append(errs, NewFlagError(exercice, &flag, nline+1, fmt.Errorf("dependancy on another scenario is not implemented yet.")))
errs = append(errs, NewFlagError(exercice, &params.Flags[nline], nline+1, fmt.Errorf("dependancy on another scenario is not implemented yet.")))
}
newFlag.FlagsDeps = append(newFlag.FlagsDeps, nf.Id)
}

View File

@ -28,10 +28,10 @@ type uTeamRegistration struct {
}
func registrationProcess(id string, team *fic.Team, members []fic.Member, team_id string) {
for _, m := range members {
for i, m := range members {
// Force Id to 0, as it shouldn't have been defined yet
m.Id = 0
if err := team.GainMember(&m); err != nil {
if err := team.GainMember(&members[i]); err != nil {
log.Println("[WRN] Unable to add member (", m, ") to team (", team, "):", err)
}
}

View File

@ -35,9 +35,9 @@ func (w *Walker) fetchTeams() error {
w.TeamBindings = map[string]*AirbusTeam{}
for tid, team := range w.Teams {
for _, t := range teams {
for i, t := range teams {
if team.Name == t.Name || team.ExternalId == t.Name {
w.TeamBindings[tid] = &t
w.TeamBindings[tid] = &teams[i]
break
}
}