~thomir-deactivatedaccount/drizzle/drizzle-fix-bug653747

« back to all changes in this revision

Viewing changes to client/get_password.cc

  • Committer: Brian Aker
  • Date: 2010-10-10 02:07:52 UTC
  • mfrom: (1827.2.3 staging)
  • Revision ID: brian@tangent.org-20101010020752-ktv73isay5dxtvp3
Merge in switch on table_share_instance inheritance.

Show diffs side-by-side

added added

removed removed

Lines of Context:
73
73
      {
74
74
        if (echo)
75
75
        {
76
 
          fputs("\b \b",stderr);
77
 
          fflush(stderr);
 
76
          fputs("\b \b",stdout);
 
77
          fflush(stdout);
78
78
        }
79
79
        pos--;
80
80
        continue;
84
84
      break;
85
85
    if (iscntrl(tmp) || pos == end)
86
86
      continue;
 
87
    if (echo)
 
88
    {
 
89
      fputc('*',stdout);
 
90
      fflush(stdout);
 
91
    }
87
92
    *(pos++) = tmp;
88
93
  }
89
94
  while (pos != to && isspace(pos[-1]) == ' ')
98
103
  TERMIO org,tmp;
99
104
  char buff[80];
100
105
 
101
 
  if (isatty(fileno(stderr)))
 
106
  if (isatty(fileno(stdout)))
102
107
  {
103
 
    fputs(opt_message ? opt_message : "Enter password: ",stderr);
104
 
    fflush(stderr);
 
108
    fputs(opt_message ? opt_message : "Enter password: ",stdout);
 
109
    fflush(stdout);
105
110
  }
106
111
#  if defined(HAVE_TERMIOS_H)
107
112
  tcgetattr(fileno(stdin), &org);
110
115
  tmp.c_cc[VMIN] = 1;
111
116
  tmp.c_cc[VTIME] = 0;
112
117
  tcsetattr(fileno(stdin), TCSADRAIN, &tmp);
113
 
  get_password(buff, sizeof(buff)-1, fileno(stdin), isatty(fileno(stderr)));
 
118
  get_password(buff, sizeof(buff)-1, fileno(stdin), isatty(fileno(stdout)));
114
119
  tcsetattr(fileno(stdin), TCSADRAIN, &org);
115
120
#  elif defined(HAVE_TERMIO_H)
116
121
  ioctl(fileno(stdin), (int) TCGETA, &org);
119
124
  tmp.c_cc[VMIN] = 1;
120
125
  tmp.c_cc[VTIME]= 0;
121
126
  ioctl(fileno(stdin),(int) TCSETA, &tmp);
122
 
  get_password(buff,sizeof(buff)-1,fileno(stdin),isatty(fileno(stderr)));
 
127
  get_password(buff,sizeof(buff)-1,fileno(stdin),isatty(fileno(stdout)));
123
128
  ioctl(fileno(stdin),(int) TCSETA, &org);
124
129
#  else
125
130
  gtty(fileno(stdin), &org);
127
132
  tmp.sg_flags &= ~ECHO;
128
133
  tmp.sg_flags |= RAW;
129
134
  stty(fileno(stdin), &tmp);
130
 
  get_password(buff,sizeof(buff)-1,fileno(stdin),isatty(fileno(stderr)));
 
135
  get_password(buff,sizeof(buff)-1,fileno(stdin),isatty(fileno(stdout)));
131
136
  stty(fileno(stdin), &org);
132
137
#  endif
133
 
  if (isatty(fileno(stderr)))
134
 
    fputc('\n',stderr);
 
138
  if (isatty(fileno(stdout)))
 
139
    fputc('\n',stdout);
135
140
 
136
141
  return strdup(buff);
137
142
}