summaryrefslogtreecommitdiffstats
path: root/libgo/go/exp/ssh/common.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/exp/ssh/common.go')
-rw-r--r--libgo/go/exp/ssh/common.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/libgo/go/exp/ssh/common.go b/libgo/go/exp/ssh/common.go
index 01c55219d47..6844fb89b79 100644
--- a/libgo/go/exp/ssh/common.go
+++ b/libgo/go/exp/ssh/common.go
@@ -224,3 +224,16 @@ func buildDataSignedForAuth(sessionId []byte, req userAuthRequestMsg, algo, pubK
r = marshalString(r, pubKey)
return ret
}
+
+// safeString sanitises s according to RFC 4251, section 9.2.
+// All control characters except tab, carriage return and newline are
+// replaced by 0x20.
+func safeString(s string) string {
+ out := []byte(s)
+ for i, c := range out {
+ if c < 0x20 && c != 0xd && c != 0xa && c != 0x9 {
+ out[i] = 0x20
+ }
+ }
+ return string(out)
+}
OpenPOWER on IntegriCloud