pkg.re/essentialkaos/ek.10@v12.41.0+incompatible/system/fuzz.go (about) 1 //go:build gofuzz 2 // +build gofuzz 3 4 package system 5 6 // ////////////////////////////////////////////////////////////////////////////////// // 7 // // 8 // Copyright (c) 2022 ESSENTIAL KAOS // 9 // Apache License, Version 2.0 <https://www.apache.org/licenses/LICENSE-2.0> // 10 // // 11 // ////////////////////////////////////////////////////////////////////////////////// // 12 13 import ( 14 "bufio" 15 "bytes" 16 ) 17 18 // ////////////////////////////////////////////////////////////////////////////////// // 19 20 func FuzzCPUStats(data []byte) int { 21 r := bytes.NewReader(data) 22 s := bufio.NewScanner(r) 23 24 _, err := parseCPUStats(s) 25 26 if err != nil { 27 return 1 28 } 29 30 return 0 31 } 32 33 func FuzzCPUInfo(data []byte) int { 34 r := bytes.NewReader(data) 35 s := bufio.NewScanner(r) 36 37 _, err := parseCPUInfo(s) 38 39 if err != nil { 40 return 1 41 } 42 43 return 0 44 } 45 46 func FuzzMemUsage(data []byte) int { 47 r := bytes.NewReader(data) 48 s := bufio.NewScanner(r) 49 50 _, err := parseMemUsage(s) 51 52 if err != nil { 53 return 1 54 } 55 56 return 0 57 } 58 59 func FuzzIOStats(data []byte) int { 60 r := bytes.NewReader(data) 61 s := bufio.NewScanner(r) 62 63 _, err := parseIOStats(s) 64 65 if err != nil { 66 return 1 67 } 68 69 return 0 70 } 71 72 func FuzzFSInfo(data []byte) int { 73 r := bytes.NewReader(data) 74 s := bufio.NewScanner(r) 75 76 _, err := parseFSInfo(s, false) 77 78 if err != nil { 79 return 1 80 } 81 82 return 0 83 } 84 85 func FuzzInterfacesStats(data []byte) int { 86 r := bytes.NewReader(data) 87 s := bufio.NewScanner(r) 88 89 _, err := parseInterfacesStats(s) 90 91 if err != nil { 92 return 1 93 } 94 95 return 0 96 } 97 98 func FuzzLAInfo(data []byte) int { 99 _, err := parseLAInfo(string(data)) 100 101 if err != nil { 102 return 1 103 } 104 105 return 0 106 } 107 108 func FuzzUptime(data []byte) int { 109 _, err := parseUptime(string(data)) 110 111 if err != nil { 112 return 1 113 } 114 115 return 0 116 }