{"action":"created","issue":{"url":"https://api.github.com/repos/hashicorp/vault/issues/672","labels_url":"https://api.github.com/repos/hashicorp/vault/issues/672/labels{/name}","comments_url":"https://api.github.com/repos/hashicorp/vault/issues/672/comments","events_url":"https://api.github.com/repos/hashicorp/vault/issues/672/events","html_url":"https://github.com/hashicorp/vault/issues/672","id":110063909,"number":672,"title":"Linux Vault binary panics after a successful LDAP login","user":{"login":"hobbeswalsh","id":14958,"avatar_url":"https://avatars.githubusercontent.com/u/14958?v=3","gravatar_id":"","url":"https://api.github.com/users/hobbeswalsh","html_url":"https://github.com/hobbeswalsh","followers_url":"https://api.github.com/users/hobbeswalsh/followers","following_url":"https://api.github.com/users/hobbeswalsh/following{/other_user}","gists_url":"https://api.github.com/users/hobbeswalsh/gists{/gist_id}","starred_url":"https://api.github.com/users/hobbeswalsh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hobbeswalsh/subscriptions","organizations_url":"https://api.github.com/users/hobbeswalsh/orgs","repos_url":"https://api.github.com/users/hobbeswalsh/repos","events_url":"https://api.github.com/users/hobbeswalsh/events{/privacy}","received_events_url":"https://api.github.com/users/hobbeswalsh/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":19,"created_at":"2015-10-06T17:53:16Z","updated_at":"2015-10-06T19:20:09Z","closed_at":null,"body":"Let's try logging in with the wrong LDAP password:\r\n\r\n```\r\n$ /vault auth -method=ldap username=\"My Name\"\r\nPassword (will be hidden):  <enter wrong password here>\r\nError making API request.\r\n\r\nURL: PUT https://vault.counsyl.com/v1/auth/ldap/login/My%!N(MISSING)ame\r\nCode: 400. Errors:\r\n\r\n* LDAP bind failed: LDAP Result Code 49 \"Invalid Credentials\":\r\n```\r\n\r\nOk fine, that looks like an expected failure. Now let's try logging in with the _right_ LDAP password.\r\n\r\n```\r\n$ ./vault auth -method=ldap username=\"My Name\"\r\nPassword (will be hidden): <enter the right password>\r\npanic: interface conversion: interface is nil, not float64\r\n\r\ngoroutine 1 [running]:\r\ngithub.com/hashicorp/vault/command.(*AuthCommand).Run(0xc8200fd810, 0xc82000a1b0, 0x1, 0x1, 0xc820142098)\r\n\t/gopath/src/github.com/hashicorp/vault/command/auth.go:206 +0x2041\r\ngithub.com/mitchellh/cli.(*CLI).Run(0xc8200fd760, 0xc8200fd760, 0x0, 0x0)\r\n\t/gopath/src/github.com/hashicorp/vault/Godeps/_workspace/src/github.com/mitchellh/cli/cli.go:112 +0x655\r\ngithub.com/hashicorp/vault/cli.RunCustom(0xc82000a190, 0x3, 0x3, 0xc820128720, 0x2)\r\n\t/gopath/src/github.com/hashicorp/vault/cli/main.go:44 +0x452\r\ngithub.com/hashicorp/vault/cli.Run(0xc82000a190, 0x3, 0x3, 0x989300)\r\n\t/gopath/src/github.com/hashicorp/vault/cli/main.go:11 +0x4c\r\nmain.main()\r\n\t/gopath/src/github.com/hashicorp/vault/main.go:10 +0x60\r\n\r\ngoroutine 5 [syscall]:\r\nos/signal.loop()\r\n\t/usr/local/go/src/os/signal/signal_unix.go:22 +0x18\r\ncreated by os/signal.init.1\r\n\t/usr/local/go/src/os/signal/signal_unix.go:28 +0x37\r\n\r\ngoroutine 7 [semacquire]:\r\nsync.runtime_Syncsemacquire(0xc820146040)\r\n\t/usr/local/go/src/runtime/sema.go:237 +0x201\r\nsync.(*Cond).Wait(0xc820146030)\r\n\t/usr/local/go/src/sync/cond.go:62 +0x9b\r\nio.(*pipe).read(0xc820146000, 0xc820168000, 0x1000, 0x1000, 0x0, 0x0, 0x0)\r\n\t/usr/local/go/src/io/pipe.go:52 +0x2d2\r\nio.(*PipeReader).Read(0xc820028168, 0xc820168000, 0x1000, 0x1000, 0xc82001a418, 0x0, 0x0)\r\n\t/usr/local/go/src/io/pipe.go:134 +0x50\r\nbufio.(*Scanner).Scan(0xc820016800, 0x2)\r\n\t/usr/local/go/src/bufio/scan.go:180 +0x877\r\ngithub.com/hashicorp/vault/command.(*Meta).FlagSet.func1(0xc820016800, 0xc8200fd810)\r\n\t/gopath/src/github.com/hashicorp/vault/command/meta.go:239 +0x25\r\ncreated by github.com/hashicorp/vault/command.(*Meta).FlagSet\r\n\t/gopath/src/github.com/hashicorp/vault/command/meta.go:242 +0x5e6\r\n\r\ngoroutine 10 [select, locked to thread]:\r\nruntime.gopark(0x1380530, 0xc820026f28, 0x1121188, 0x6, 0x42c518, 0x2)\r\n\t/usr/local/go/src/runtime/proc.go:185 +0x163\r\nruntime.selectgoImpl(0xc820026f28, 0x0, 0x18)\r\n\t/usr/local/go/src/runtime/select.go:392 +0xa64\r\nruntime.selectgo(0xc820026f28)\r\n\t/usr/local/go/src/runtime/select.go:212 +0x12\r\nruntime.ensureSigM.func1()\r\n\t/usr/local/go/src/runtime/signal1_unix.go:227 +0x353\r\nruntime.goexit()\r\n\t/usr/local/go/src/runtime/asm_amd64.s:1696 +0x1\r\n\r\ngoroutine 18 [IO wait]:\r\nnet.runtime_pollWait(0x2b1a1329d648, 0x72, 0xc82000e160)\r\n\t/usr/local/go/src/runtime/netpoll.go:157 +0x60\r\nnet.(*pollDesc).Wait(0xc82012de20, 0x72, 0x0, 0x0)\r\n\t/goroot/src/net/fd_poll_runtime.go:73 +0x3a\r\nnet.(*pollDesc).WaitRead(0xc82012de20, 0x0, 0x0)\r\n\t/goroot/src/net/fd_poll_runtime.go:78 +0x36\r\nnet.(*netFD).Read(0xc82012ddc0, 0xc8200d1400, 0x400, 0x400, 0x0, 0x2b1a13297050, 0xc82000e160)\r\n\t/goroot/src/net/fd_unix.go:232 +0x23a\r\nnet.(*conn).Read(0xc820028238, 0xc8200d1400, 0x400, 0x400, 0x0, 0x0, 0x0)\r\n\t/goroot/src/net/net.go:172 +0xe4\r\ncrypto/tls.(*block).readFromUntil(0xc8201921b0, 0x2b1a1329da98, 0xc820028238, 0x5, 0x0, 0x0)\r\n\t/goroot/src/crypto/tls/conn.go:455 +0xcc\r\ncrypto/tls.(*Conn).readRecord(0xc82007b340, 0x1380517, 0x0, 0x0)\r\n\t/goroot/src/crypto/tls/conn.go:540 +0x2d1\r\ncrypto/tls.(*Conn).Read(0xc82007b340, 0xc82018b000, 0x1000, 0x1000, 0x0, 0x0, 0x0)\r\n\t/goroot/src/crypto/tls/conn.go:901 +0x167\r\nnet/http.noteEOFReader.Read(0x2b1a132a62d8, 0xc82007b340, 0xc8200fda78, 0xc82018b000, 0x1000, 0x1000, 0x0, 0x0, 0x0)\r\n\t/goroot/src/net/http/transport.go:1370 +0x67\r\nnet/http.(*noteEOFReader).Read(0xc820480800, 0xc82018b000, 0x1000, 0x1000, 0x0, 0x0, 0x0)\r\n\t<autogenerated>:126 +0xd0\r\nbufio.(*Reader).fill(0xc8203cf980)\r\n\t/usr/local/go/src/bufio/bufio.go:97 +0x1e9\r\nbufio.(*Reader).Peek(0xc8203cf980, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0)\r\n\t/usr/local/go/src/bufio/bufio.go:132 +0xcc\r\nnet/http.(*persistConn).readLoop(0xc8200fda20)\r\n\t/goroot/src/net/http/transport.go:876 +0xf7\r\ncreated by net/http.(*Transport).dialConn\r\n\t/goroot/src/net/http/transport.go:685 +0xc78\r\n\r\ngoroutine 19 [select]:\r\nnet/http.(*persistConn).writeLoop(0xc8200fda20)\r\n\t/goroot/src/net/http/transport.go:1009 +0x40c\r\ncreated by net/http.(*Transport).dialConn\r\n\t/goroot/src/net/http/transport.go:686 +0xc9d\r\n```\r\n\r\nThat seems like a show-stopper. How did this ship in 0.3.1?"},"comment":{"url":"https://api.github.com/repos/hashicorp/vault/issues/comments/145970721","html_url":"https://github.com/hashicorp/vault/issues/672#issuecomment-145970721","issue_url":"https://api.github.com/repos/hashicorp/vault/issues/672","id":145970721,"user":{"login":"jefferai","id":28627,"avatar_url":"https://avatars.githubusercontent.com/u/28627?v=3","gravatar_id":"","url":"https://api.github.com/users/jefferai","html_url":"https://github.com/jefferai","followers_url":"https://api.github.com/users/jefferai/followers","following_url":"https://api.github.com/users/jefferai/following{/other_user}","gists_url":"https://api.github.com/users/jefferai/gists{/gist_id}","starred_url":"https://api.github.com/users/jefferai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jefferai/subscriptions","organizations_url":"https://api.github.com/users/jefferai/orgs","repos_url":"https://api.github.com/users/jefferai/repos","events_url":"https://api.github.com/users/jefferai/events{/privacy}","received_events_url":"https://api.github.com/users/jefferai/received_events","type":"User","site_admin":false},"created_at":"2015-10-06T19:20:09Z","updated_at":"2015-10-06T19:20:09Z","body":"I'm surprised that 0.3.0 works, as the output formats and CLI code haven't changed between 0.3.0 and 0.3.1, but generally speaking 0.2.0 and 0.3.x are *not* compatible client and server versions.\r\n\r\nWhen you get downtime, please try using a same version of the server and client.\r\n\r\nAlso, based on the stack trace, this is almost certainly only affecting the CLI; the HTTP API should be fine."}}