パスワードを忘れた? アカウント作成
451994 journal

pasasの日記: パスワードとメモ

日記 by pasas
入力した文字のエコーを表示しないプログラム。
メモメモ。

#include <stdio.h>
#include <stdlib.h>
#include <termio.h>

int main( int argc, char *argv[]) {
  char login_name[ 256 ];
  char password[ 256 ];

  struct termio current_termio;
  struct termio new_termio;

  printf("Login: ");
  fgets( login_name, sizeof( login_name), stdin);

  printf("Password: ");

  if( ioctl( 0, TCGETA, &current_termio) < 0 ) {
    perror("ioctl( TCGETA): ");
    exit(0);
  }

  new_termio = current_termio;
  new_termio.c_lflag &= ~ECHO;

  if( ioctl( 0, TCSETA, &new_termio) < 0 ) {
    perror("ioctl( 0, TCSETA, &new_termio): ");
    exit(0);
  }

  fgets( password, sizeof( password), stdin);

  if( ioctl( 0, TCSETA, &current_termio) < 0 ) {
    perror("ioctl( 0, TCSETA, &current_termio): ");
    exit(0);
  }

  printf("\n\n");
  printf("login_name => %s", login_name);
  printf("password => %s", password);
}
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

長期的な見通しやビジョンはあえて持たないようにしてる -- Linus Torvalds

読み込み中...