|
26 | 26 | uploadEndpoint = flag.String("upload", "", "Upload endpoint")
|
27 | 27 | resetEndpoint = flag.String("reset", "", "Upload endpoint")
|
28 | 28 | syncEndpoint = flag.String("sync", "", "Upload endpoint")
|
| 29 | + binMode = flag.Bool("b", false, "Upload binary mode") |
29 | 30 | verbose = flag.Bool("v", true, "Verbose flag")
|
30 | 31 | quiet = flag.Bool("q", false, "Quiet flag")
|
31 | 32 | useSsl = flag.String("ssl", "", "SSL flag")
|
@@ -120,11 +121,18 @@ func main() {
|
120 | 121 | }
|
121 | 122 | defer f.Close()
|
122 | 123 |
|
123 |
| - str := StreamToString(f) |
124 |
| - re := regexp.MustCompile(`\r?\n`) |
125 |
| - str = re.ReplaceAllString(str, "") |
| 124 | + var sketchData *bytes.Buffer |
126 | 125 |
|
127 |
| - req, err := http.NewRequest("POST", httpheader+*networkAddress+":"+*networkPort+*uploadEndpoint, bytes.NewBufferString(str)) |
| 126 | + if *binMode { |
| 127 | + sketchData = StreamToBytes(f) |
| 128 | + } else { |
| 129 | + str := StreamToString(f) |
| 130 | + re := regexp.MustCompile(`\r?\n`) |
| 131 | + str = re.ReplaceAllString(str, "") |
| 132 | + sketchData = bytes.NewBufferString(str) |
| 133 | + } |
| 134 | + |
| 135 | + req, err := http.NewRequest("POST", httpheader+*networkAddress+":"+*networkPort+*uploadEndpoint, sketchData) |
128 | 136 | if err != nil {
|
129 | 137 | if *verbose {
|
130 | 138 | fmt.Println("Error sending sketch file")
|
@@ -173,8 +181,12 @@ func main() {
|
173 | 181 | }
|
174 | 182 | }
|
175 | 183 |
|
176 |
| -func StreamToString(stream io.Reader) string { |
| 184 | +func StreamToBytes(stream io.Reader) *bytes.Buffer { |
177 | 185 | buf := new(bytes.Buffer)
|
178 | 186 | buf.ReadFrom(stream)
|
179 |
| - return buf.String() |
| 187 | + return buf |
| 188 | +} |
| 189 | + |
| 190 | +func StreamToString(stream io.Reader) string { |
| 191 | + return StreamToBytes(stream).String() |
180 | 192 | }
|
0 commit comments