1/* @(#) main module: dispatches command to apps within udpxy
2 *
3 * Copyright 2008-2011 Pavel V. Cherenkov (pcherenkov@gmail.com)
4 *
5 *  This file is part of udpxy.
6 *
7 *  udpxy is free software: you can redistribute it and/or modify
8 *  it under the terms of the GNU General Public License as published by
9 *  the Free Software Foundation, either version 3 of the License, or
10 *  (at your option) any later version.
11 *
12 *  udpxy is distributed in the hope that it will be useful,
13 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
14 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 *  GNU General Public License for more details.
16 *
17 *  You should have received a copy of the GNU General Public License
18 *  along with udpxy.  If not, see <http://www.gnu.org/licenses/>.
19 */
20
21#include <string.h>
22#include <libgen.h>
23#include <stdio.h>
24
25static const char UDPXY[]   = "udpxy";
26extern int udpxy_main( int argc, char* const argv[] );
27
28#ifdef UDPXREC_MOD
29static const char UDPXREC[] = "udpxrec";
30extern int udpxrec_main( int argc, char* const argv[] );
31#endif
32
33int
34main( int argc, char* const argv[] )
35{
36    const char* app = basename(argv[0]);
37
38    if( 0 == strncmp( UDPXY, app, sizeof(UDPXY) ) )
39        return udpxy_main( argc, argv );
40#ifdef UDPXREC_MOD
41    else if( 0 == strncmp( UDPXREC, app, sizeof(UDPXREC) ) )
42        return udpxrec_main( argc, argv );
43#endif
44
45    (void)fprintf( stderr, "Unsupported udpxy module [%s]\n", app);
46    return 1;
47}
48
49/* __EOF__ */
50