#include #include #include int main(int argc, char *argv[]) { char str1[512]; char str2[512]; char str3[512]; char mess[512]; if(argc != 4) { printf("Please type 'VNC_mims-smp name ip_adress port_num, ex VNC_mims-smp masakazu 133.26.35.10 5901'\n"); return 0; } sprintf(str1,"%s",argv[1]); sprintf(str2,"%s",argv[2]); sprintf(str3,"%s",argv[3]); printf("name = %s\n",str1); printf("ip_adress = %s\n",str2); printf("port_num = %s\n",str3); int str1len = strlen(str1); int str2len = strlen(str2); int str3len = strlen(str3); int str1sum = 0; int str2sum = 0; int str3sum = 0; int i; for(i = 0;i < str1len;i++) { str1sum += str1[i]; } for(i = 0;i < str2len;i++) { str2sum += str2[i]; } for(i = 0;i < str3len;i++) { str3sum += str3[i]; } //printf("str1sum = %d\n",str1sum); //printf("str2sum = %d\n",str2sum); //printf("str3sum = %d\n",str3sum); int local_port_num; int mod_num = 4096; local_port_num = (str1sum % mod_num) * (str2sum % mod_num) * (str3sum % mod_num) % mod_num + 1024; printf("local_port_num = %d\n",local_port_num); int port_num = atoi(str3); printf("The commad is 'ssh -C -N -f -L %d:%s:%d %s@mims-gate.mind.meiji.ac.jp -p 22'\n",local_port_num,str2,port_num,str1); sprintf(mess,"ssh -C -N -f -L %d:%s:%d %s@mims-gate.mind.meiji.ac.jp -p 22",local_port_num,str2,port_num,str1); system(mess); sprintf(mess,"open vnc://localhost:%d",local_port_num); system(mess); return 0; }