Browse Source

go.crypt/ssh/terminal: declare TCGETS, TCSETS constants locally.

Currently the ssh/terminal package cannot be compiled under gccgo. Even though gccgo may be running on linux, its syscall package is slightly different and does not contain these constants.

This proposal resolves the issue by declaring the two constants locally, as we've done for the *BSDs.

LGTM=hanwen, iant
R=hanwen, iant, gobot
CC=golang-codereviews
https://golang.org/cl/101670043
Dave Cheney 11 years ago
parent
commit
2aff5f12d8
1 changed files with 5 additions and 6 deletions
  1. 5 6
      ssh/terminal/util_linux.go

+ 5 - 6
ssh/terminal/util_linux.go

@@ -2,11 +2,10 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build linux
-
 package terminal
 
-import "syscall"
-
-const ioctlReadTermios = syscall.TCGETS
-const ioctlWriteTermios = syscall.TCSETS
+// These constants are declared here, rather than importing
+// them from the syscall package as some syscall packages, even
+// on linux, for example gccgo, do not declare them.
+const ioctlReadTermios = 0x5401  // syscall.TCGETS
+const ioctlWriteTermios = 0x5402 // syscall.TCSETS