コード例 #1
0
ファイル: tool_main.c プロジェクト: 08142008/curl
/*
 * This is the main global constructor for the app. Call this before
 * _any_ libcurl usage. If this fails, *NO* libcurl functions may be
 * used, or havoc may be the result.
 */
static CURLcode main_init(struct GlobalConfig *config)
{
  CURLcode result = CURLE_OK;

#if defined(__DJGPP__) || defined(__GO32__)
  /* stop stat() wasting time */
  _djstat_flags |= _STAT_INODE | _STAT_EXEC_MAGIC | _STAT_DIRSIZE;
#endif

  /* Initialise the global config */
  config->showerror = -1;             /* Will show errors */
  config->errors = stderr;            /* Default errors to stderr */

  /* Allocate the initial operate config */
  config->first = config->last = malloc(sizeof(struct OperationConfig));
  if(config->first) {
    /* Perform the libcurl initialization */
    result = curl_global_init(CURL_GLOBAL_DEFAULT);
    if(!result) {
      /* Get information about libcurl */
      result = get_libcurl_info();

      if(!result) {
        /* Get a curl handle to use for all forthcoming curl transfers */
        config->easy = curl_easy_init();
        if(config->easy) {
          /* Initialise the config */
          config_init(config->first);
          config->first->easy = config->easy;
          config->first->global = config;
        }
        else {
          helpf(stderr, "error initializing curl easy handle\n");
          result = CURLE_FAILED_INIT;
          free(config->first);
        }
      }
      else {
        helpf(stderr, "error retrieving curl library information\n");
        free(config->first);
      }
    }
    else {
      helpf(stderr, "error initializing curl library\n");
      free(config->first);
    }
  }
  else {
    helpf(stderr, "error initializing curl\n");
    result = CURLE_FAILED_INIT;
  }

  return result;
}
コード例 #2
0
ファイル: tool_paramhlp.c プロジェクト: dnasdw/3dstool
CURLcode get_args(struct OperationConfig *config, const size_t i)
{
  CURLcode result = CURLE_OK;
  bool last = (config->next ? FALSE : TRUE);

  /* Check we have a password for the given host user */
  if(config->userpwd && !config->oauth_bearer) {
    result = checkpasswd("host", i, last, &config->userpwd);
    if(result)
      return result;
  }

  /* Check we have a password for the given proxy user */
  if(config->proxyuserpwd) {
    result = checkpasswd("proxy", i, last, &config->proxyuserpwd);
    if(result)
      return result;
  }

  /* Check we have a user agent */
  if(!config->useragent) {
    config->useragent = my_useragent();
    if(!config->useragent) {
      helpf(config->global->errors, "out of memory\n");
      result = CURLE_OUT_OF_MEMORY;
    }
  }

  return result;
}
コード例 #3
0
ファイル: 207.C プロジェクト: 13436120/Cgames
void main()
{
	int i,x,y,key,ca,cb,j,aA,aB,bA,bB;
	char ch;
Start:	
	helpf();
	gotoxy(15,16);
	printf("请按任意键开始游戏(按Q键退出)...");
	ch=getch();
	if(ch=='Q'||ch=='q')
	{
		window(1,1,25,80);
		textbackground(BLACK);
		textcolor(LIGHTGRAY);
		clrscr();
		exit(0);
	}
	helpf();
	 
	for(i=0;i<3;i++)
		a[i]='A';
	for(i=3;i<6;i++)
		a[i]='B';
	for(i=0;i<6;i++)
		b[i]='0';
	printcase(a,b);
	while(1)
	{
		gotoxy(20,18);
		printf("输入去彼岸商人的人数: ");
		scanf("%d",&x);
		gotoxy(20,18);
		printf("输入去彼岸随从的人数: ");
		scanf("%d",&y);
		for(ca=0,cb=0,i=0;i<6;i++) 
		{
			if(a[i]=='A')
	    			ca++;
			else if(a[i]=='B')
	    			cb++;
		}
		if(x<0 || x>ca || y<0 || y>cb || x+y<1 ||x+y>2) 
		{
			gotoxy(15,21);
			printf("输入有误!!按任意键重新开始...");
			getch();
			goto Start;
		}
		for(i=1;i<=x;i++) 
		{
	  		for(j=0;j<6;j++)
	   			if(a[j]=='A') 
	   			{
	    				a[j]='0';
	    				break;
	   			}
		}
		for(i=1;i<=x;i++) 
		{
	  		for(j=0;j<6;j++)
	   			if(b[j]=='0') 
	   			{
	    				b[j]='A';
	       				break;
	   			}
		}
		for(i=1;i<=y;i++) 
		{
	  		for(j=0;j<6;j++)
	   			if(a[j]=='B') 
	   			{
	    				a[j]='0';
	    				break;
	   			}
		}
		for(i=1;i<=y;i++) 
		{
	  		for(j=0;j<6;j++)
	   			if(b[j]=='0') 
	   			{
	    				b[j]='B';
	    				break;
				}
		}
		for(aA=0,aB=0,i=0;i<6;i++) 
		{
	  		if(a[i]=='A')
	   			aA++;
	  		else if(a[i]=='B')
	   			aB++;
		}
		for(bA=0,bB=0,i=0;i<6;i++) 
		{
	  		if(b[i]=='A')
	   			bA++;
	  		else if(b[i]=='B')
	   			bB++;
		}   
	 
		if((aA==3) ||(bA==3) || (aA==aB) || (bA==bB))  
		{
	      		helpf();
	      		printcase(a,b);
	         }
		else
		{
			gotoxy(15,21);
			printf("商人被杀,按任意键重新开始...");
			getch();
			goto Start;
		}
		gotoxy(20,18);
		printf("输入回此岸商人的人数: ");
		scanf("%d",&x);
		gotoxy(20,18);
		printf("输入回此岸随从的人数: ");
		scanf("%d",&y);
		for(ca=0,cb=0,i=0;i<6;i++)
		{
	  		if(b[i]=='A')
	   			ca++;
	  		else if(b[i]=='B')
	   			cb++;
		}
		if(x<0 || x>ca || y<0 || y>cb || x+y<1 || x+y>2) 
		{
			gotoxy(15,21);
	   		printf("输入有误!!按任意键重新开始...");
	   		getch();
	  		goto Start;
		}
		for(i=1;i<=x;i++) 
		{
	  		for(j=0;j<6;j++)
	   			if(b[j]=='A') 
	   			{
	    				b[j]='0';
	    				break;
	   			}
		}
		for(i=1;i<=x;i++) 
		{
	  		for(j=0;j<6;j++)
	   			if(a[j]=='0') 
	   			{
	    				a[j]='A';
	    				break;
				}
		}
		for(i=1;i<=y;i++) 
		{
	  		for(j=0;j<6;j++)
	   		if(b[j]=='B') 
	   		{
	    			b[j]='0';
	    			break;
	   		}
		}
		for(i=1;i<=y;i++) 
		{
	  		for(j=0;j<6;j++)
	   		if(a[j]=='0') 
	   		{
	    			a[j]='B';
				break;
	   		}
		}
		for(aA=0,aB=0,i=0;i<6;i++) 
		{
	  		if(a[i]=='A')
	   			aA++;
	  		else if(a[i]=='B')
	   			aB++;
		}
		for(bA=0,bB=0,i=0;i<6;i++) 
		{
	  		if(b[i]=='A')
	   			bA++;
	  		else if(b[i]=='B')
	   			bB++;
		}
	 	if((aA==3) ||(bA==3) || (aA==aB) || (bA==bB))
	 	{
	  		helpf();
	  		printcase(a,b);
		}
		else 
		{
 	  		gotoxy(15,21);
	   		printf("商人被杀,按任意键重新开始...");
	        	getch();
	        	goto Start;
	  	}
	}
}