Пример #1
0
void APP_Run(void) {
  cardMounted = FALSE;
  SHELL_Init();
  W5100_Init();
  SOCK_Init();
  if (FRTOS1_xTaskCreate(
        Task1,  /* pointer to the task */
        (signed char *)"Task1", /* task name for kernel awareness debugging */
        configMINIMAL_STACK_SIZE+100, /* task stack size */
        (void*)NULL, /* optional task startup argument */
        tskIDLE_PRIORITY,  /* initial priority */
        (xTaskHandle*)NULL /* optional task handle to create */
      ) != pdPASS) {
    /*lint -e527 */
    for(;;){}; /* error! probably out of memory */
    /*lint +e527 */
  }
  FRTOS1_vTaskStartScheduler();
}
Пример #2
0
/****************************************************
 * Main Method
 ****************************************************/
int main (int argc, char *argv[])
{
    int go;
    int total, free, per, size;
    char cwd [SMBF_FILENAMESIZE + 1];
/*  int sid;   */
    RTSMB_CLI_SESSION_DSTAT dstat;

    go = 1;
    if (SOCK_Init ())
        return 1;

/*  rtsmb_cli_session_new_with_name (argv[1], TRUE, NULL, &sid);            */
/*  rtsmb_cli_session_full_server_enum (sid, 0xFFFFFFFF, argv[2], NULL, 0); */
/*  return 0;                                                               */

    PRINTF (("Initialized rtsmb\n"));

    rtsmb_cli_ez_set_cwd ("/*blah/c"); */

    rtsmb_cli_ez_open ("yo.txt", RTP_FILE_O_CREAT | RTP_FILE_O_RDONLY, RTP_FILE_S_IREAD);

    rtsmb_cli_ez_get_cwd (cwd, SMBF_FILENAMESIZE);
    printf ("cwd is %s\n", cwd);

    rtsmb_cli_ez_set_cwd ("/*blah/c/trans2"); */

    rtsmb_cli_ez_open ("\\yo.txt", RTP_FILE_O_CREAT | RTP_FILE_O_RDONLY, RTP_FILE_S_IREAD);

    rtsmb_cli_ez_get_cwd (cwd, SMBF_FILENAMESIZE);
    printf ("cwd is %s\n", cwd);

    PRINTF (("Starting client test\n"));
/*  rtsmb_cli_test_regression ("blah", 1);   */

#if defined (RTSMB_LINUX)
    rtsmb_srv_share_add_tree ("c", "testbed dir", NULL, "/rtsmb", SHARE_FLAGS_CASE_SENSITIVE, SECURITY_READWRITE, NULL);
    rtsmb_srv_share_add_ipc (NULL);
#elif 0
    rtsmb_srv_read_config ("c:\\smbconf.txt");
#else

    rtsmb_cli_ez_set_user ("Michael Terry", "hello");

    rtsmb_srv_share_add_tree ("c", "testbed dir", NULL, "c:\\rtsmb", SHARE_FLAGS_8_3 | SHARE_FLAGS_CREATE, SECURITY_READWRITE, NULL);
/*  if (rtsmb_srv_share_add_tree ("c", "testbed dir", NULL, "\\\\" SHARE_SERVER "\\c", SHARE_FLAGS_8_3, SECURITY_READWRITE, NULL) < 0)   */
        /*abort ();                                                                                                                      */
    rtsmb_srv_share_add_ipc (NULL);
  /*  rtsmb_srv_share_add_printer ("printer", "Test Printer", 1, NULL, "c:\\", 0, NULL, "HP LaserJet 1100");   */

    /*rtsmb_srv_set_mode (AUTH_SHARE_MODE);   */

    rtsmb_srv_set_mode (AUTH_USER_MODE);
    rtsmb_srv_register_group ("ebs");
    rtsmb_srv_set_group_permissions ("ebs", "c", SECURITY_READWRITE);
    rtsmb_srv_set_group_permissions ("ebs", "IPC$", SECURITY_READWRITE);
    rtsmb_srv_set_group_permissions ("ebs", "printer", SECURITY_READWRITE);

    rtsmb_srv_register_group ("nonebs");
    rtsmb_srv_set_group_permissions ("nonebs", "c", SECURITY_READ);
    rtsmb_srv_set_group_permissions ("nonebs", "IPC$", SECURITY_READWRITE);
    rtsmb_srv_set_group_permissions ("nonebs", "printer", SECURITY_READWRITE);

    rtsmb_srv_register_user (SMB_GUESTNAME, NULL);
    rtsmb_srv_add_user_to_group (SMB_GUESTNAME, "nonebs");

    rtsmb_srv_register_user ("TONY", "roxor");
    rtsmb_srv_add_user_to_group ("TONY", "ebs");

    rtsmb_srv_register_user ("JOHN", "hello");
    rtsmb_srv_add_user_to_group ("JOHN", "ebs");

    rtsmb_srv_register_user ("MIKE TERRY", "blarg");
    rtsmb_srv_add_user_to_group ("MIKE TERRY", "ebs");

    rtsmb_srv_register_user ("MIKE", "blarg");
    rtsmb_srv_add_user_to_group ("MIKE", "ebs");


#endif
/*  os_spawn_task (TASKCLASS_CURRENT, rtsmb_main, 0,0,0,0);   */

    while (1)
    {
        rtsmb_srv_cycle (-1);
        if (go++ % 2 == 0)
        {
        /*  printf ("0");   */
        }
        else
        {
    /*      printf ("-");   */
        }
    }

    printf ("Press return to shut down SMB Server \n");
    /*Main Loop   */
    while(go)
    {
        int r;
    /*  ks_sleep (ks_ticks_p_sec () * 2);   */
        rtsmb_main ();
#ifndef RTSMB_LINUX
        if(kbhit())
        {
            switch (getch())
            {
            case 'q':   go = 0;
                        break;
            case 'r':   rtsmb_srv_share_remove ("c");
                        break;
            case 'a':   rtsmb_srv_share_add_tree ("c", "windows dir", NULL, "c:\\rtsmb", SHARE_FLAGS_8_3, SECURITY_READWRITE, "blarggity24");
                        break;
            case 'i':   {
                byte newip[4] = {192,168,1,100};
                byte newmask[4] = {255, 255, 0, 0};
                        rtsmb_srv_set_ip (newip, newmask);
                        }
                        break;
            case 'u':   {
                byte newip[4] = {192,168,1,20};
                byte newmask[4] = {255, 255, 255, 0};
                        rtsmb_srv_set_ip (newip, newmask);
                        }
                        break;
#ifdef RTSMB_RTIP
            case 'p':   PRINTF (("Starting Debug Output:\n"));
                        DEBUG_ERROR ("\n\n", PORTS_TCP, 0, 0);
                        break;
#endif

            case '1':   r = rtsmb_cli_ez_open ("/*blah/c/yo.txt", RTP_FILE_O_CREAT | RTP_FILE_O_RDONLY, RTP_FILE_S_IREAD); */
                        PRINTF (("On EZ open, fd is %i\n", r));
                        break;

            case '2':   r = rtsmb_cli_ez_get_free ("/*blah/c/yo.txt", &total, &free, &per, &size); */
                        PRINTF (("total: %i, free: %i, per: %i, size: %i\n", total, free, per, size));
                        break;

            case '3':   r = rtsmb_cli_ez_find_first ("/**", &dstat); */

                        printf ("Start of server search.\n");
                        while (r == 1)
                        {
                            if (dstat.unicode)
                            {
                                PRINTF (("  server name: %S\n", dstat.filename));
                            }
                            else
                            {
                                PRINTF (("  server name: %s\n", dstat.filename));
                            }

                            r = rtsmb_cli_ez_find_next (&dstat);
                        }

                        rtsmb_cli_ez_find_close (&dstat);
                        break;

            default:    break;
            }
       }
#endif
    }

    /*Shutdown   */
    PRINTF (("main: shutting down\n"));

    rtsmb_cli_shutdown ();
    rtsmb_srv_shutdown ();
    SOCK_Shutdown ();

    return(0);
}/*main */