Subversion Repositories HelenOS

Rev

Rev 3886 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3886 Rev 3912
Line 1... Line 1...
1
/*
1
/*
2
 * Copyright (c) 2008 Lukas Mejdrech
2
 * Copyright (c) 2009 Lukas Mejdrech
3
 * All rights reserved.
3
 * All rights reserved.
4
 *
4
 *
5
 * Redistribution and use in source and binary forms, with or without
5
 * Redistribution and use in source and binary forms, with or without
6
 * modification, are permitted provided that the following conditions
6
 * modification, are permitted provided that the following conditions
7
 * are met:
7
 * are met:
Line 25... Line 25...
25
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
 */
27
 */
28
 
28
 
29
/** @addtogroup net
29
/** @addtogroup net
30
 * @{
30
 *  @{
31
 */
31
 */
32
 
32
 
33
/** @file
33
/** @file
-
 
34
 *  Starts the networking subsystem.
-
 
35
 *  Performs self test if configured so.
-
 
36
 *  @see configuration.h
34
 */
37
 */
35
 
38
 
36
#include <async.h>
39
#include <async.h>
37
#include <stdio.h>
40
#include <stdio.h>
38
#include <task.h>
41
#include <task.h>
Line 43... Line 46...
43
#include "../../err.h"
46
#include "../../err.h"
44
#include "../../messages.h"
47
#include "../../messages.h"
45
#include "../../modules.h"
48
#include "../../modules.h"
46
#include "../../self_test.h"
49
#include "../../self_test.h"
47
 
50
 
-
 
51
/** Networking startup module name.
-
 
52
 */
48
#define NAME    "Networking startup"
53
#define NAME    "Networking startup"
49
 
54
 
-
 
55
/** Module entry point.
-
 
56
 *  @param argc The number of command line parameters. Input parameter.
-
 
57
 *  @param argv The command line parameters. Input parameter.
-
 
58
 *  @returns EOK on success.
-
 
59
 *  @returns EINVAL if the networking module cannot be started.
-
 
60
 *  @returns Other error codes as defined for the self_test() function.
-
 
61
 *  @returns Other error codes as defined for the NET_NET_STARTUP message.
-
 
62
 */
50
int     main( int argc, char * argv[] );
63
int     main( int argc, char * argv[] );
-
 
64
 
-
 
65
/** Starts the module.
-
 
66
 *  @param fname The module absolute name. Input parameter.
-
 
67
 *  @returns The started module task identifier.
-
 
68
 *  @returns Other error codes as defined for the task_spawn() function.
-
 
69
 */
51
task_id_t   spawn( const char * fname );
70
task_id_t   spawn( const char * fname );
52
 
71
 
53
int main( int argc, char * argv[] ){
72
int main( int argc, char * argv[] ){
54
    ERROR_DECLARE;
73
    ERROR_DECLARE;
55
 
74
 
Line 63... Line 82...
63
        printf( "\n" NAME "Could not spawn networking" );
82
        printf( "\n" NAME "Could not spawn networking" );
64
        return EINVAL;
83
        return EINVAL;
65
    }
84
    }
66
    // start networking
85
    // start networking
67
    networking_phone = connect_to_service( SERVICE_NETWORKING );
86
    networking_phone = connect_to_service( SERVICE_NETWORKING );
68
    if( ERROR_OCCURED( ipc_call_sync_0_0( networking_phone, NET_NET_STARTUP ))){
87
    if( ERROR_OCCURRED( ipc_call_sync_0_0( networking_phone, NET_NET_STARTUP ))){
69
        printf( "\n" NAME " - ERROR %d\n", ERROR_CODE );
88
        printf( "\n" NAME " - ERROR %d\n", ERROR_CODE );
70
        return ERROR_CODE;
89
        return ERROR_CODE;
71
    }
90
    }
72
    printf( "\n" NAME " - OK\n" );
91
    printf( "\n" NAME " - OK\n" );
73
    return EOK;
92
    return EOK;