Esempio n. 1
0
static int toggle_trace()
{
    if(extra_option("funcs"))
	EiC_traceFunc = !EiC_traceFunc;
    else
	EiC_traceFunc = 0;

    if(EiC_traceFunc)
	EiC_traceON = 1;
    else
	EiC_traceON = !EiC_traceON;

    return EiC_traceON;
}
Esempio n. 2
0
static int toggle_listcode()
{
    if(extra_option("linenums"))
	EiC_lineNums = !EiC_lineNums;
    else
	EiC_lineNums = 0;

    if(EiC_lineNums)
	EiC_listcodeON = 1;
    else
	EiC_listcodeON = !EiC_listcodeON;

    return EiC_listcodeON;
}
Esempio n. 3
0
File: main.c Progetto: vocho/openqnx
int
main( int argc, char *argv[] ) {
	int		opt, file_count = 0;

	pname = basename(argv[0]);
	if ( argc < 2 ) {
		Puterr( "insufficient arguments\n" );
		exit(1);
		}

	prefix[0] = '\0';	/* No prefix and forced file name off by default	*/
	logfile[0] = '\0';	/* No activity log file by default */
	force = newer = relaxed = today = verbose = quiet = qterm = FALSE;
	make_dir = TRUE;
	onesec = ONESEC;
	retry_limit = RETRY_MAX;

	if (optind==0) /* 16-bit */
		++optind;		/* Skip over command name	*/

	if ( *argv[optind] == '/' ) { 	/*-- Check for a device over-ride ----*/
		if ( ( mdm = open( argv[1], O_RDWR ) ) == -1 ) {
			Puterr( "unable to open device '%s'\n", argv[1] );
			exit( 1 );
			}
		++optind;		/* Skip over specified device name	*/
		}
	else { 	/*-- No device override so use stdin/stdout to communicate ----*/
		struct stat statbuf;

		strcpy( device, ttyname( 0 ) );
		if( fstat( 0, &statbuf ) != -1 && S_ISSOCK(statbuf.st_mode) ) {
			socket = 1;
			mdm = 0;
		    }
		else if ( ( mdm = open( device, O_RDWR ) ) == -1 ) {
			Puterr( "unable to open stdin as r/w\n" );
			exit( 1 );
			}
		use_stdin = TRUE;
		}

	signal( SIGALRM, (void *)&timeout );

	init_mdm();			/* Setup the selected modem port and initialize		*/
						/*	any variables associated with the protocol.		*/

	if		( ( *argv[optind] | ' ' ) == 'r')					sending = FALSE;
	else if ( ( *argv[optind] | ' ' ) == 's'  &&  argc > 2 )	sending = TRUE;
	else {
		Puterr( "Invalid argument '%s' (must be 'se' or 're')\n", argv[optind] );
		exit( 1 );
		}
	++optind;

	/*---- Ready for command line options ----*/
	while( ( opt = getopt( argc, argv, "FmnqrtuvVQf:l:p:s:" ) ) != -1 ) {
		switch( opt ) {
			case 'F':		flashfile = TRUE;			break;
			case 'f':		strcpy( prefix, optarg );
							force = TRUE;				break;
			case 'l':		strcpy( logfile, optarg );	break;
			case 'm':		make_dir = FALSE;			break;
			case 'n':		newer = TRUE;				break;
			case 'r':		relaxed = TRUE;
							onesec <<= 2;		/* Timeouts 4 times larger	*/
							retry_limit <<= 1;	/* Twice as many retries	*/
							break;
			case 's':		sub_packet_size = atoi( optarg );
							sub_packet_size >>= 3;	/* Divide by 8 for sub_packet	*/
							if ( !sub_packet_size ) {
								Puterr( "packet size too small\n" );
								exit( 1 );
								}
							if ( sub_packet_size > MAXSIZE ) {
								Puterr( "packet size too large (max %d)\n",
											MAXSIZE*8);
								exit( 1 );
								}
							break;
			case 't':		today = TRUE;					break;
			case 'u':		unlink_file = TRUE;				break;
			case 'V':
			case 'v':		verbose = TRUE;					break;
			case 'q':		quiet = TRUE;					break;
			case 'Q':		qterm = TRUE;					break;
			case 'p':		strcpy( prefix, optarg );		break;
			case '?': 		if ( !extra_option( (char *)&optopt ) ) {
								Puterr( "unknown option '%s'\n", optopt );
								exit( 1 );
								}
							break;
			default: 		++file_count;		/* Count filenames		*/
							continue;			/*	but don't null them	*/
			}
		}

	if ( file_count > 1 ) multi_send_check();	/* Check if multi-send OK	*/

	final_init();						/* Last changes before starting		*/

#ifndef __QNXNTO__
	if ( !use_stdin ) dev_mode( 0, 0, _DEV_MODES );		/* Raw console input for abort requests	*/
#endif
	if ( sending )	send_files(		argc - optind, (signed char **)(argv + optind) );
	else	 		receive_files(	argc - optind, (signed char **)(argv + optind) );

	done( 0 );				/* Protocol dependant termination routine		*/
        return 0;
	}