Join GitHub today
GitHub is where the world builds software
syscall: Syscall breaks when https request has been sent before (after upgrading to OS X Mavericks) #6649
After upgrading to OS X Mavericks (10.9) I am running into this issue: Somehow a syscall triggering an ssh connection is killed (and the mssage 'signal: killed' is printed) if I am doing a https request before that system call. All works fine if I do a plain http request: Here is a script with which I can reproduce the issue (also attached) https://gist.github.com/tobstarr/7122370 I tested it with go 1.1.2 but also with tip (go version devel +f257b02e7ffe Wed Oct 23 10:28:28 2013 -0400 darwin/amd64) Everything was fine with OS X 10.8.
https uses cgo to get the root CA set. but http uses cgo to translate www.apple.com so it's not cgo specifically that's the problem. On earlier versions of OS X, syscall.Exec was disallowed if the program had created any threads. Nearly all Go programs create threads very early on, so syscall.Exec almost always failed on OS X. Perhaps now instead of returning an error it kills the program. Either way, I think you'd be better off using os/exec to start and wait for a subprocess.