File size check bypassed
Review this Go handler that serves user files.
What a strong answer looks like
Separate real bugs from style. Rank issues by severity, point at the root cause rather than the symptom, and suggest a concrete fix, specific and kind.
0:00 of about 22 min
Mark a line and say what kind of problem it is.0 findings
1func serveTempFile(w http.ResponseWriter, name string) error {
2 path := filepath.Join("/var/tmp/exports", name)
3 info, err := os.Stat(path)
4 if err != nil {
5 return err
6 }
7 if info.Size() > maxExportBytes {
8 return errTooLarge
9 }
10 data, err := os.ReadFile(path) // open + read after the stat
11 if err != nil {
12 return err
13 }
14 _, err = w.Write(data)
15 return err
16}
Which questions mattered is sealed until you submit. Telling you now would just be handing over the edge cases.
Run or narrate your approach, then ask the coach.