xinetd로 실행되는 프로그램 telnet 접속시 입력을 먼저 받는 문제..

march의 이미지

telnet으로 특정 포트로 접속하면 제가 만든 프로그램을 실행시키고 프로그램 안에서 동작 외에 다른건 못하게 하려고 하는데요.
xinetd를 쓰면 된다고 하길래 테스트를 위해 간단하게 프로그램을 짰습니다.

프로그램 소스
int main(){
char a[100];
printf("New Start");
scanf("%s", a);
printf("%s", a);
}

서비스 설정

service back
{
socket_type = stream
wait = no
user = root
server = /home/guest/back
disable = no
}

그런데 telnet localhost 9999로 접근해보니 printf의 New Start가 먼저 출력되지 않고 scanf 입력을 먼저 받은 후에 printf는 모아서 한번에 처리되더군요.
이를 어떻게 해결할 수 있을지 문의드립니다.

march의 이미지

setvbuf를 이용하여 해결했습니다.
그런데 글 수정을 어디서 하는지 모르겠네요; 말머리를 어떻게 붙이는지..