Esempio n. 1
0
static globus_result_t
globus_l_xio_null_init(
    globus_xio_driver_t *               out_driver)
{
    globus_xio_driver_t                 driver;
    globus_result_t                     res;

    res = globus_xio_driver_init(&driver, "null", NULL);
    if(res != GLOBUS_SUCCESS)
    {
        return res;
    }

    globus_xio_driver_set_transform(
        driver,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
	NULL);

    globus_xio_driver_set_server(
        driver,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL);

    *out_driver = driver;

    return GLOBUS_SUCCESS;
}
static
globus_result_t
globus_l_xio_net_manager_init(
    globus_xio_driver_t *               out_driver)
{
    globus_xio_driver_t                 driver;
    globus_result_t                     result = GLOBUS_SUCCESS;

    result = globus_xio_driver_init(&driver, "net_manager", NULL);
    if(result != GLOBUS_SUCCESS)
    {
        return result;
    }

    globus_xio_driver_set_transform(
        driver,
        globus_l_xio_net_manager_open,
        globus_l_xio_net_manager_close,
        NULL,
        NULL,
        NULL,
        NULL);

    globus_xio_driver_set_server(
        driver,
        globus_l_xio_net_manager_server_init,
        globus_l_xio_net_manager_server_accept,
        globus_l_xio_net_manager_server_destroy,
        NULL,
        NULL,
        globus_l_xio_net_manager_link_destroy);

    globus_xio_driver_set_server_pre_init(
        driver,
        globus_l_xio_net_manager_server_pre_init);

    globus_xio_driver_set_attr(
        driver,
        globus_l_xio_net_manager_attr_init,
        globus_l_xio_net_manager_attr_copy,
        globus_l_xio_net_manager_attr_cntl,
        globus_l_xio_net_manager_attr_destroy);

    *out_driver = driver;

    return GLOBUS_SUCCESS;
}
static globus_result_t
globus_l_xio_telnet_init(
    globus_xio_driver_t *               out_driver)
{
    globus_xio_driver_t                 driver;
    globus_result_t                     res;
    GlobusXIOName(globus_l_xio_telnet_init);

    res = globus_xio_driver_init(&driver, "telnet", NULL);
    if(res != GLOBUS_SUCCESS)
    {
        return res;
    }

    globus_xio_driver_set_transform(
        driver,
        globus_l_xio_telnet_open,
        globus_l_xio_telnet_close,
        globus_l_xio_telnet_read,
        globus_l_xio_telnet_write,
        NULL,
        NULL);

    globus_xio_driver_set_server(
        driver,
        globus_l_xio_telnet_server_init,
        globus_l_xio_telnet_accept,
        globus_l_xio_telnet_server_destroy,
        NULL,
        NULL,
        globus_l_xio_telnet_link_destroy);
    
    globus_xio_driver_set_attr(
        driver,
        globus_l_xio_telnet_attr_init,
        globus_l_xio_telnet_attr_copy,
        globus_l_xio_telnet_attr_cntl,
        globus_l_xio_telnet_attr_destroy);
    
    *out_driver = driver;

    return GLOBUS_SUCCESS;
}