xref: /onnv-gate/usr/src/cmd/cmd-inet/usr.bin/talk/talk.c (revision 473:9c6ea6da29de)
10Sstevel@tonic-gate /*
20Sstevel@tonic-gate  * CDDL HEADER START
30Sstevel@tonic-gate  *
40Sstevel@tonic-gate  * The contents of this file are subject to the terms of the
50Sstevel@tonic-gate  * Common Development and Distribution License, Version 1.0 only
60Sstevel@tonic-gate  * (the "License").  You may not use this file except in compliance
70Sstevel@tonic-gate  * with the License.
80Sstevel@tonic-gate  *
90Sstevel@tonic-gate  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
100Sstevel@tonic-gate  * or http://www.opensolaris.org/os/licensing.
110Sstevel@tonic-gate  * See the License for the specific language governing permissions
120Sstevel@tonic-gate  * and limitations under the License.
130Sstevel@tonic-gate  *
140Sstevel@tonic-gate  * When distributing Covered Code, include this CDDL HEADER in each
150Sstevel@tonic-gate  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
160Sstevel@tonic-gate  * If applicable, add the following below this CDDL HEADER, with the
170Sstevel@tonic-gate  * fields enclosed by brackets "[]" replaced with your own identifying
180Sstevel@tonic-gate  * information: Portions Copyright [yyyy] [name of copyright owner]
190Sstevel@tonic-gate  *
200Sstevel@tonic-gate  * CDDL HEADER END
210Sstevel@tonic-gate  */
220Sstevel@tonic-gate /*
23*473Sbw  * Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
240Sstevel@tonic-gate  * Use is subject to license terms.
250Sstevel@tonic-gate  */
260Sstevel@tonic-gate 
270Sstevel@tonic-gate /*	Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T	*/
280Sstevel@tonic-gate /*	  All Rights Reserved  	*/
290Sstevel@tonic-gate 
300Sstevel@tonic-gate /*
310Sstevel@tonic-gate  * University Copyright- Copyright (c) 1982, 1986, 1988
320Sstevel@tonic-gate  * The Regents of the University of California
330Sstevel@tonic-gate  * All Rights Reserved
340Sstevel@tonic-gate  *
350Sstevel@tonic-gate  * University Acknowledgment- Portions of this document are derived from
360Sstevel@tonic-gate  * software developed by the University of California, Berkeley, and its
370Sstevel@tonic-gate  * contributors.
380Sstevel@tonic-gate  */
390Sstevel@tonic-gate 
400Sstevel@tonic-gate #pragma ident	"%Z%%M%	%I%	%E% SMI"
410Sstevel@tonic-gate 
420Sstevel@tonic-gate #include "talk.h"
430Sstevel@tonic-gate #include <locale.h>
440Sstevel@tonic-gate 
450Sstevel@tonic-gate /*
460Sstevel@tonic-gate  * talk:	A visual form of write. Using sockets, a two way
470Sstevel@tonic-gate  *		connection is set up between the two people talking.
480Sstevel@tonic-gate  *		With the aid of curses, the screen is split into two
490Sstevel@tonic-gate  *		windows, and each users text is added to the window,
500Sstevel@tonic-gate  *		one character at a time...
510Sstevel@tonic-gate  *
520Sstevel@tonic-gate  */
530Sstevel@tonic-gate 
54*473Sbw int
main(argc,argv)550Sstevel@tonic-gate main(argc, argv)
560Sstevel@tonic-gate int argc;
570Sstevel@tonic-gate char *argv[];
580Sstevel@tonic-gate {
59*473Sbw 	register int	c;
600Sstevel@tonic-gate 
610Sstevel@tonic-gate 	(void) setlocale(LC_ALL, "");
620Sstevel@tonic-gate 
630Sstevel@tonic-gate #if !defined(TEXT_DOMAIN)	/* Should be defined by cc -D */
640Sstevel@tonic-gate #define	TEXT_DOMAIN "SYS_TEST"
650Sstevel@tonic-gate #endif
660Sstevel@tonic-gate 	(void) textdomain(TEXT_DOMAIN);
670Sstevel@tonic-gate 	while ((c = getopt(argc, argv, "")) != EOF)
680Sstevel@tonic-gate 		switch (c) {
690Sstevel@tonic-gate 			case '?':
700Sstevel@tonic-gate 				(void) fprintf(stderr,"Usage: talk %s\n",
710Sstevel@tonic-gate 					gettext("address [terminal]"));
720Sstevel@tonic-gate 				exit(2);
730Sstevel@tonic-gate 		}
740Sstevel@tonic-gate 	get_names(argc, argv);
750Sstevel@tonic-gate 
760Sstevel@tonic-gate 	init_display();
770Sstevel@tonic-gate 
780Sstevel@tonic-gate 	open_ctl();
790Sstevel@tonic-gate 	open_sockt();
800Sstevel@tonic-gate 
810Sstevel@tonic-gate 	start_msgs();
820Sstevel@tonic-gate 
830Sstevel@tonic-gate 	if (!check_local()) {
840Sstevel@tonic-gate 		invite_remote();
850Sstevel@tonic-gate 	}
860Sstevel@tonic-gate 
870Sstevel@tonic-gate 	end_msgs();
880Sstevel@tonic-gate 
890Sstevel@tonic-gate 	set_edit_chars();
900Sstevel@tonic-gate 
910Sstevel@tonic-gate 	talk();
92*473Sbw 	return (0);
930Sstevel@tonic-gate }
94