SSH from bash can freeze the console when non regular characters are outputed. #53

Open
opened 2026-01-30 21:40:45 +00:00 by claunia · 0 comments
Owner

Originally created by @MarcMagnin on GitHub (Jan 25, 2018).

Hi!

  • Your Windows build number:
    Microsoft Windows [Version 10.0.16299.192]

  • What you're doing and what's happening:
    Run an Ubuntu VM (mine is v16) with Golang 1.9.3 installed on it (with Virtualbox for instance).
    SSH from Windows bash onto that VM and run the following golang program:

package main

import (
	"math"
	"fmt"
)

func main() {

	var tt float32 = 1
	for j := 0; j < 5000; j++ {
		bits := uint64(math.Float32bits(tt))
		tt++
		byteCount := 4
		var bb []byte
		bb = make([]byte, 0, byteCount)
		for i := 0; i < byteCount; i++ {
			bb = append(bb, byte(bits&255))
			bits = bits >> 8
		}
		fmt.Print(string(bb))
	}
}

go run <filename>.go

  • What's wrong / what should be happening instead:
    It starts outputing some characters and then freeze.
    Characters outputed:
  ?   @  @@  @  @  @  @   A  A   A  0A  @A  PA  `A  pA  A  A  A  A  A  A  A  A  A  A  A  A  A  A  A  A   B  B B  B  B  B  B  B   B  $B  (B  ,
B  0B  4B  8B  <B  @B  DB  HB  LB  PB  TB  XB  \B  `B  dB  hB  lB  pB  tB  xB  |B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B
B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B   C  C  C  C  C  
C  C C          C
C  C  C  C  C  C  C  C  C  C  C  C  C  C     C  C  C  C   C  !C  "C  #C  $C  %C  &C  'C  (C  )C  *C  +C  ,C  -C  .C  /C  0C  1C  2
3C  4C  5C  6C  7C  8C  9C  :C  ;C  <C  =C  >C  ?C  @C  AC  BC  CC  DC  EC  FC  GC  HC  IC  JC  KC  LC  MC  NC  OC  PC  QC  RC  SC  TC  UC  VC  WC
XC  YC  ZC  [C  \C  ]C  ^C  _C  `C  aC  bC  cC  dC  eC  fC  gC  hC  iC  jC  kC  lC  mC  nC  oC  pC  qC  rC  sC  tC  uC  vC  wC  xC  yC  zC  {C  |C
}C  ~C  C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C
C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C
C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C
C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C
C C  C C  C C  C C  C C  C C  C C  C C  C C  C C  C C   D @ D  D  D  D @D D D  D @D D D  D @D D D  D @D D D  D @D D D  D @D 
D  D @D D D D DDD       D @     D       D       D
D @
D
D
D  D @D D D  D @D D D  D @D D D  D @D D D  D @D D D  D @D D D  D @D D D  D @D D D  D @D D D  D @D D D  D @
D D D  D @D D D  D @D D D    D @D D D  D @D D D  D @D D D  D @D D D   D @ D  D  D  !D @!D !D !D  "D @"D "D "D  #D @#D #D #
D  $D @$D $D $D  %D @%D %D %D  &D @&D &D &D  'D @'D 'D 'D  (D @(D (D (D  )D @)D )D )D  *D @*D *D *D  +D @+D +D +D  ,D @,D ,D ,D  -D @-D -D -D  .D @.
D .D .D  /D @/D /D /D  0D @0D 0D 0D  1D @1D 1D 1D  2D @2D 2D 2D  3D @3D 3D 3D  4D @4D 4D 4D  5D @5D 5D 5D  6D @6D 6D 6D  7D @7D 7D 7D  8D @8D 8D 8D
9D @9D 9D 9D  :D @:D :D :D  ;D @;D ;D ;D  <D @<D <D <D  =D @=D =D =D  >D @>D >D >D  ?D @?D ?D ?D  @D @@D @D @D  AD @AD AD AD  BD @BD BD BD  CD @CD C
D CD  DD @DD DD DD  ED @ED ED ED  FD @FD FD FD  GD @GD GD GD  HD @HD HD HD  ID @ID ID ID  JD @JD JD JD  KD @KD KD KD  LD @LD LD LD  MD @MD MD MD  N
@ND ND ND  OD @OD OD OD  PD @PD PD PD  QD @QD QD QD  RD @RD RD RD  SD @SD SD SD  TD @TD TD TD  UD @UD UD UD  VD @VD VD VD  WD @WD WD WD  XD @XD XD X
D  YD @YD YD YD  ZD @ZD ZD ZD  [D @[D [D [D  \D @\D \D \D  ]D @]D ]D ]D  ^D @^D ^D ^D  _D @_D _D _D  `D @`D `D `D  aD @aD aD aD  bD @bD bD bD  cD @c
D cD cD  dD @dD dD dD  eD @eD eD eD  fD @fD fD fD  gD @gD gD gD  hD @hD hD hD  iD @iD iD iD  jD @jD jD jD  kD @kD kD kD  lD @lD lD lD  mD @mD mD mD
nD @nD nD nD  oD @oD oD oD  pD @pD pD pD  qD @qD qD qD  rD @rD rD rD  sD @sD sD sD  tD @tD tD tD  uD @uD uD uD  vD @vD vD vD  wD @wD wD wD  xD @xD x
D xD  yD @yD yD yD  zD @zD zD zD  {D @{D {D {D  |D @|D |D |D  }D @}D }D }D  ~D @~D ~D ~D  D @D D

This works perfectly fine on powershell (running the program from Windows) or within the Ubuntu native terminal (from Virtualbox interface).

Regards

Originally created by @MarcMagnin on GitHub (Jan 25, 2018). Hi! * Your Windows build number: Microsoft Windows [Version 10.0.16299.192] * What you're doing and what's happening: Run an Ubuntu VM (mine is v16) with Golang 1.9.3 installed on it (with Virtualbox for instance). SSH from Windows bash onto that VM and run the following golang program: ``` package main import ( "math" "fmt" ) func main() { var tt float32 = 1 for j := 0; j < 5000; j++ { bits := uint64(math.Float32bits(tt)) tt++ byteCount := 4 var bb []byte bb = make([]byte, 0, byteCount) for i := 0; i < byteCount; i++ { bb = append(bb, byte(bits&255)) bits = bits >> 8 } fmt.Print(string(bb)) } } ``` `go run <filename>.go` * What's wrong / what should be happening instead: It starts outputing some characters and then freeze. Characters outputed: ``` ? @ @@ @ @ @ @ A A A 0A @A PA `A pA A A A A A A A A A A A A A A A A B B B B B B B B B $B (B , B 0B 4B 8B <B @B DB HB LB PB TB XB \B `B dB hB lB pB tB xB |B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B C C C C C  C C C C C C C C C C C C C C C C C C C C C C C !C "C #C $C %C &C 'C (C )C *C +C ,C -C .C /C 0C 1C 2 3C 4C 5C 6C 7C 8C 9C :C ;C <C =C >C ?C @C AC BC CC DC EC FC GC HC IC JC KC LC MC NC OC PC QC RC SC TC UC VC WC XC YC ZC [C \C ]C ^C _C `C aC bC cC dC eC fC gC hC iC jC kC lC mC nC oC pC qC rC sC tC uC vC wC xC yC zC {C |C }C ~C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C D @ D D D D @D D D D @D D D D @D D D D @D D D D @D D D D @D  D D @D D D D DDD D @ D D D D @ D D D D @D D D D @D D D D @D D D D @D D D D @D D D D @D D D D @D D D D @D D D D @D D D D @D D D D @ D D D D @D D D D @D D D D @D D D D @D D D D @D D D D @D D D D @ D D D !D @!D !D !D "D @"D "D "D #D @#D #D # D $D @$D $D $D %D @%D %D %D &D @&D &D &D 'D @'D 'D 'D (D @(D (D (D )D @)D )D )D *D @*D *D *D +D @+D +D +D ,D @,D ,D ,D -D @-D -D -D .D @. D .D .D /D @/D /D /D 0D @0D 0D 0D 1D @1D 1D 1D 2D @2D 2D 2D 3D @3D 3D 3D 4D @4D 4D 4D 5D @5D 5D 5D 6D @6D 6D 6D 7D @7D 7D 7D 8D @8D 8D 8D 9D @9D 9D 9D :D @:D :D :D ;D @;D ;D ;D <D @<D <D <D =D @=D =D =D >D @>D >D >D ?D @?D ?D ?D @D @@D @D @D AD @AD AD AD BD @BD BD BD CD @CD C D CD DD @DD DD DD ED @ED ED ED FD @FD FD FD GD @GD GD GD HD @HD HD HD ID @ID ID ID JD @JD JD JD KD @KD KD KD LD @LD LD LD MD @MD MD MD N @ND ND ND OD @OD OD OD PD @PD PD PD QD @QD QD QD RD @RD RD RD SD @SD SD SD TD @TD TD TD UD @UD UD UD VD @VD VD VD WD @WD WD WD XD @XD XD X D YD @YD YD YD ZD @ZD ZD ZD [D @[D [D [D \D @\D \D \D ]D @]D ]D ]D ^D @^D ^D ^D _D @_D _D _D `D @`D `D `D aD @aD aD aD bD @bD bD bD cD @c D cD cD dD @dD dD dD eD @eD eD eD fD @fD fD fD gD @gD gD gD hD @hD hD hD iD @iD iD iD jD @jD jD jD kD @kD kD kD lD @lD lD lD mD @mD mD mD nD @nD nD nD oD @oD oD oD pD @pD pD pD qD @qD qD qD rD @rD rD rD sD @sD sD sD tD @tD tD tD uD @uD uD uD vD @vD vD vD wD @wD wD wD xD @xD x D xD yD @yD yD yD zD @zD zD zD {D @{D {D {D |D @|D |D |D }D @}D }D }D ~D @~D ~D ~D D @D D ``` This works perfectly fine on powershell (running the program from Windows) or within the Ubuntu native terminal (from Virtualbox interface). Regards
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#53