From ff9d8a5042d3720af3a340c827eb64c52027c97f Mon Sep 17 00:00:00 2001 From: root Date: Tue, 25 Mar 2014 17:30:20 +0100 Subject: [PATCH] config for useranme and password of cam added. --- UDPclient.depend | 17 ++++++++++++----- UDPclient.layout | 12 ++++++------ bin/Debug/UDPclient | Bin 35222 -> 36086 bytes client.config | 2 ++ extern.c | 1 - main.c | 25 +++++++++++++++++++------ obj/Debug/extern.o | Bin 2332 -> 2304 bytes obj/Debug/henglong.o | Bin 7120 -> 7144 bytes obj/Debug/main.o | Bin 23264 -> 24276 bytes obj/Debug/wansview.o | Bin 8628 -> 9160 bytes wansview.c | 29 +++++++++++++++-------------- wansview.h | 12 ++++++------ 12 files changed, 60 insertions(+), 38 deletions(-) diff --git a/UDPclient.depend b/UDPclient.depend index 5eca541..02a5400 100644 --- a/UDPclient.depend +++ b/UDPclient.depend @@ -29,7 +29,7 @@ -1394056611 source:/home/chch/HengLongUDPclient/main.c +1395763961 source:/home/chch/HengLongUDPclient/main.c @@ -52,13 +52,14 @@ "henglong.h" "wansview.h" + "extern.h" -1393293088 /home/chch/HengLongUDPclient/henglong.h +1395699958 /home/chch/HengLongUDPclient/henglong.h -1393293088 source:/home/chch/HengLongUDPclient/henglong.c +1395699958 source:/home/chch/HengLongUDPclient/henglong.c "henglong.h" 1393274981 source:/home/stefan/Proj/HengLongUDPclient/henglong.c @@ -102,14 +103,14 @@ 1393290504 source:/home/stefan/Proj/HengLongUDPclient/wansview.c "wansview.h" -1394056760 /home/chch/HengLongUDPclient/wansview.h +1395762040 /home/chch/HengLongUDPclient/wansview.h -1394060723 source:/home/chch/HengLongUDPclient/wansview.c +1395763555 source:/home/chch/HengLongUDPclient/wansview.c "wansview.h" 1395529103 source:/root/HengLongUDPclient/henglong.c @@ -158,3 +159,9 @@ 1395529103 source:/root/HengLongUDPclient/wansview.c "wansview.h" +1395761599 source:/home/chch/HengLongUDPclient/extern.c + "extern.h" + +1395699958 /home/chch/HengLongUDPclient/extern.h + + diff --git a/UDPclient.layout b/UDPclient.layout index c02f2e3..3b75491 100644 --- a/UDPclient.layout +++ b/UDPclient.layout @@ -4,11 +4,11 @@ - - + + - - + + @@ -17,10 +17,10 @@ - + - + diff --git a/bin/Debug/UDPclient b/bin/Debug/UDPclient index 2b106d7890fc47d02722cec3c896fc4f22543cac..6c7748bd90feb2518007f4413041b5ec91c70c12 100755 GIT binary patch literal 36086 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 A`~Uy| delta 16687 zcmch8X?zq_zIL6eN~bzqNq3UY0!c_n8p0AGY?47hkYx}7K@bp8kR=2`)(*-N8wd@= z5H7Jm9k<|yxa&j_Srml<=U!zP7gW?yM{uGrinyVJ=04Ap1Zg4R_$U)w9h6(6hnnsJQoUSP!b!Cn@!JE6 zQoY=W;d3Q!#_(Gu9*E)hNIa;7Q*Hh2zz+=yD)>|{&sM^BAOa#yZ@|$XubeP`Z1t%T zwUa|rLGQ_EI)i>_a7d?+ZQ@c;Y6gcoRG)3G%!b&+tq{{G=9pSBIa4YG{R zf_N-C50#z)rDlKKicmq_Ji`s~CWbhRvU;dBGif?$D;g+=QnMnY*W`wp4q3AT9g|1K zh4+kgPoOv{kqN`J`J;6>FtqzJ#<}@>>DXXm3}Dj`eE@At2AzG_b|!tDwT7nl5g%Hs zQpb8MD!*kNOYJ76S!UXe$#)<$w?Hpio6@>m^Ehf`9m*`E7IaOD{E8x1{H1zCaq% zoC}&G{?e-r)=TMyU0haAuvYGomIhV+0Z%TkJzW%1g z+ELJ6Fs=Tu(a-Ue)P+MOFKk92wJSoo-#k9z7LGXXev~x|w?^Crw}(xB*Q*V71c2$}(w@&RmOK>f$Zl z>4cSl=Edx?J zEFy%xSNZ?R(1bR6=Mh76E2t{}EQXA#{ zXHtD&t?5V1>@^2#-l^U%%4_a<5Vywv{QjEgVCeXFT=_=LmNKUE%F93H|FBnrf3MyA zHY2EA^ZIslH7|Sr9?q>97c!hw^u8z%0;cb#b#NigM5LWsX*b^5v(i@0p0{ZW0Zd|S z&rRla?^Ik5MQ7mpW%E7-#e8#pbT%;mj_7g3xjtH9BPS#>hsg8M?&!+3=og@s*F@*p z#L}N5lFEk%)VZM6ZuuBU=Pe)Ls%_~2O6M&h(xY#Y9(|YeXfEl|0$j_*7M8eN$O1>- zxHhqyh^ zDMLHwQ^~K5DvIR&#_T>~sz(rfL94P!au-y9cPI0!Hna{*S^U^YMw8c>6n zx&j;>PT*Q*oP`XqdWium)7D18ew%SkrRTdhIxgXL07~t2oQoU3YH( zrcIdJSDhMwg{t=M&}eis?~^-+HKD#hy6vkQ7b>xK=N3m`spg=(y|ByKWGPJTf3 zxUORje)OdEabDZVA*j_&4wcYLGj=!(j0@36pUa?{;DR&T9dvOSWXT)EQoxCVb(Ljn zSyz9A)~W+6FDkyj`cy8=%7v(QaHxQHs1z$%^?_WMrEivp>8e`j{Dl?~7%rBTW_d08S!QsYB+RoOJr&mm`Xusgb8T|-Y&xR@@WuG=TABX(i zCz_kNjoyR40R1=Ud!odEowm2L~P+_?JPZt}8uZrwm1F;))M@%D@z3 zojNeZT&oRC2~_JtQ;r0*$3;p2r2XI>9GIf>x#lok0KM6G9m)aB(o8^UNM8^7+~1+k z+zQ70-(ljz(D36NjPG z^n}^-!oU)il4vA^*$Lx1c4}f692PRVtDx@cFx8O;}FCXf3`8x z_#c7%6MwPMfH9cNW*ZB7ClgbIjb?jaSAYr!&Gnw5S=B)cyd2z#x`T$icM?r-&<E69>giof)D(6)W!@Kv1{}1nmlJSenwSF{YS94i zM5393HCBrTdq1IYmgpzZq28y+%@zZsZ6x_rm4E27yB)YMX*fzT&hT_qGhO9^D2=Z|(G9i;A zj#Q2aNiBD&#fttjSVn1EToaQ(F7tXX*FibJ@$dDyBWD-*E~Xoo!@SpYoF?BeD~6Z` zA83~qFf@2{v7m8BoLaVl`8>wUHG0QM78nD;i@1s*c;;I()Qgr6$^)JLVMGU%PkRo(>8#uGvg{Fq}Tami|2iO<-Wt@N1dL=Mj z5gw*mf~KU3v+y8Nr6QH~qTL9_>oLt#S(kbx?Pp4+6O*r&>EbjE=So$o72hI#F2Z!@ zKL9C_>uCB}Z4q%$-OqBnOe2VLyNKzR^QR*i@Uz@5FX(5vT`b$ra=TcrpXGM3f()5) z8+unV#S97-iQ)*t+h~XQCx*x+TNDvQRWO=3Oj5-ehFT_bqA+LZuRuB$(zQ2v@cc2q0BkjmnKVyN!rUv+Lt9BgPdBVdpS${vK`d$ za+>zFa!}KYd0O$ccF=&A^RzF=K{-)l5c_f++@7g@c@ApN)V?+jYR}ZZ0tdBcYF}Fi zwP$Kyp@Z5pwJ#*TghSPtsD16lw-U7{YF`JW1pjK0JyZKioD}Vu+Sld0ncCO=yqVh9 zOi&mA|H9$qle>xJ{OjSy4h5y(hm495^?AakHhOfk9B2xL7j zF~j6eBam%lNhbFgfmY8;o~Z9|4;WlDz3nfbgsMZe~cqPx?c`+=EN-Q#Yg(1Q^hgJa%g3iz9Orj$l;UO?LLX=a-d~)zfEEua}cyLd)Qc_ z;;RGM%$(mqBRj2N|Mrnr0U9FbI4OU}MdWpM%`h*Qjd>KE zMnqd$^}T^ihKZsc5HLN|X=hKliYXWF_Iw&K0jE{WRYY;FN8V(^Ova!R9T)`mn2Js# zqT^Szw+ffmqQ`F9yPEcTagcH7uB6a~dnKltuaVdLLK%CKtg0xptI9W5@cv+9ezOhr z`q)@tnk>1v$VOA`K>FH&q$xVRi+=s#JpF!vh9QomAXM`^T71LKMKLE4dy@=gW`0EM zEk>yotqGVJ)}0sUmr+|BJqSa=h2V@vSSxx}_omURDQsV_>D~2rH`_3aHLHjNr2& za0uyYon%;=*iHUS)J^L|epV)n(22K*qUETRUL*?07pEz@1j>35`B~pfkk4M$BskEE z_5*}c512?8C?dAj&?HAIVPH%vVIZ|yO_?$eg4D{I07s4hx5NpTNVP36n{depSisI^ zI?Q@>E=8GQ0bHx!$wF&l9r&=d7?j6cv+8%3S)(t}BXeL^{f-jQJ&tQ@aT>awsX`Nt zjO=rX$t0FT)-%;fB22_yjWy8}lN>1}=OPHtNSTgQ8Yz`>#0D4>mkGIsbBEYvIKDHh z$E?%Nhm)r37GbmOEdTXN-VhiOmkYA&JuF918_^by#cXMU-?;I6yuGl{$I2U&A9;?< zd7R9+x)**)6Z08|8tzcki{2LyGYS@AyeuRrMz{S0g%gYTaPFXz^t-r^Dcy!RK8C>0 z)o5bLy9lP;lOQSWAHek)XeuENk#%4{P#1yBY7Lt0j)P_tzlW<ng7y zd2NMj>*5q#wfdnA?KJ@Puw_><32E^7R{T=TG2+qq3y%hlhBhcp>-7s}5>Jy~Z|qgIh9^(#v8a+%e;ktL-I04bvVOmt)6 zM(K7TMbRcfuKPJg)=qBZFX&6VHXN3cGayxkwk9UoAx_eU*GtK}A+-zb-I!!&DH*Yi z+Q{7y?cqvZFr1z{i|3K^(_mb%p58mliGL7kia^=wc*#K~IhOeTZeZYT#v6XgBQ}$dk-AVR z`3~a@vSg_X^}LhhmW%hm)hfSTmN$rO8;@v}XP4zoX(4Ep=a%J7k5^c^Jg*mL>REzA zQ>)y*H19Fu6%KxSX;Zt{eBDU5yI%oH7OT*@N<( znu|H`n_PSjpPgQuRByNgKMO(=JH%2b$(c1m?uF!*;AV|S6Wje9o1I_;C z0K`G$3D0zPs{H0ax4&`FaFS2|n)5}%2Ed-)*Wjx1DBn}PicIHg2_EHp*31DVL05TX z<9U2M<>m1`%wG@0JuaUGZRfb0GT7q&pU349ywUyky!`*)ad|{+l@Z3y%O67Q?kNn8 z%O8_y?6}-cCw5$Jqp{=iCDK&vxV(=_%X#gyF?15KA=E!3Y^Ap!oN(7G0f6_W!89eqdKYc)Ay1`=) z^D}D6V~-y2o=y_ONK^uXn|yVI;N8~5FmO`&I-rgqA(fkabp-EDDmVG+2#x|M@%>6G z7i4Ing6A!%e81Ald1ulfz~6yr`Hld7exRiDntwE7R`XRjyfbgL#MDWBHBIJ;IA6zAm%a*a7(}56qT(*oy9<#2!Vw)8n*Sf6`m!^w!MKRkdm!@|` zKFP^gX!`gr@?DxDIon z33)*%I~J*&(ISVJY-{TH%s^J0d8lSvDHDnsJCD0Wv%b0_gJE|2ZJ6y5FT&G>mg4g< zG-l!NfEaS|ZWFNbugok+ZLy1ohVN48EwP}YjNAIl*w!~Ni>&jL%5DjhQMbwy-O^J< znwaRjO1f&Dpma;8UQRp*gG&|?11PV>z{O@?-ieWDs?yuqH!(wBG=F~B`p3l1jmA~| zgqUFsofJ+S4J}pqxApQQo8S1+q+?>gp$~RoAw&Uc5FdGRU}B$4`Y| zK6FM`B`~?KOPQ$Uu0ElK)b_%7Tua@BNWQI_2+@t|uB+d9=bd-ecER0y>K(P?RceXw z97TBAR(01C4)voJ>O<M|-&n5or6=qqAo1am?(e z84zDmcR}EZs&c?@t4HhW8}7XJSbe`rN35|*?Mbo2){|4ht-o1eoB^^?Q#%RcHMJ1W zK{}oW6~`SfPugr9nR#&Bvd(;gbYE45!@vuXqq?TO zuc(Ezy*8^RehE5UO%JX$hbCY6I9i!dD+d&O3y@go@-;2$ZsesuTg!- zx~m*@4byV1OQwx&+&%4Q)p~j6#&*gW{sFXZ`PHAM^B$Sd*-}w*Bh>zJ+I63 z#_aM5!n$eJ5o7VpMN6)mF=LT6r(!_k(-q^?S?nBqFysBy{paycSJW z!aDm6Hf*r3vtg6{MjH;W$AnAyAp1g0Seg?47@+<66kR8Q4To~2rH{At36@Uu5}Oop zX~fr_FGiH-WO15A??X#-jMY!xtPThbXrJF;>7?_QY;od5hjBV}#4Vi|Lv)2A2q!+$ zhoO4k*< zI7HVo@gSmgqoH@=d1&-ZIq98*Zod*F-Y1Sm@5GsYyuo4o_HjuZkvS9R|6Y=n(fFN} z>IOs-Utm&59@9c6ZG#j)k4#ei?}(Geov&>s(qf0ihtYoJmZZmH@-5<|@#i(a4u>@E z9Mdo?Jw*e~i-~mJeYXV2_OAI!k^3+L{*0zk#T^a9QGb@pqiFmWR)b4_542xwI{%6l zqth-|Yd$#aLpE%%Z)d|M`}Q^*VBb-~k#LXz&*<>v9B~~fe*kef+IeB|>!%DzA}s#Z zD(0T=?$u~?&;CO+SlcH7`HdeKu4&>Qp;7oFZdO0G5raKXhQTn||I>y8>`&NmkUjs| z0_&SlBl~k12-DDQ z;g9d+CyqU#g+0M#pGD9e5yE-3WRPzqz(4B%KzSPtu)&_2N|u2=zb^zFVE>^F2ifyz zi$(Sl;9r~|6lA~4h6C((+px)gj}05_U$S8y*4Q7O#g?H7Wi&hT5$?N7+#D8zNJV7r z>gx)QF&kWgTOn}0v|1LU?fV_t*%++{K^nv66M8ij^i#BN!PL1?YbVE0sv zL5L?q(2yPCuubuo1M)jbWjwn-#2AEzpy6kPd$&&wSiq(iY(mv?; z=ZJN9N%sg&6Pag#{d1VsI1>j5>_8)f{qr_#vfpXL27CSj3No?#ln*0#1q7|Mf&H~; z2%8;Mop}$KLdoku!a7_U3(o-IPBesP;?EVoq2nR>;KmqrrX#H@NzK~tQ1R;i8){qx zjD3%Y*a_?b@+KORDPaGW4aX8A{*FUq|D_EVu>Z=TGcA6IpK)mHy;wA9mwl2A$LuC? zACl}4*@tYnfPFiMZkx67_707Gu?-vSJK3shG}YIdku7Jj$_8 zm&J|ymo68L1D1a))DfB1g;i}lAKC1f6|Ip<$L76=!>jJ!3aNy zuLnblGPUvTs^^9JZoaiKQkZZCq9`Rr=kW{!pb5~`fS`9)9SLa zP*s;$SFCKWPFrFvL$|WZx*y$L)EPfaRdrk4PlmF#suPFg`O8CLX z?^iu3)FTgD+p62BPv2`DtlpT$KkuWM*o-C1mw@~4waV9YN#%hI|JOh=e`%SN3z#DA)f`#Goc)7>AIW*p7_kO{+(gH#_!gNg#QI8&w;!E diff --git a/client.config b/client.config index 6c13ef1..d5d920c 100644 --- a/client.config +++ b/client.config @@ -2,6 +2,8 @@ KEYBOARD /dev/input/event2 JOYSTICK /dev/input/js0 CAM 192.168.1.23 CAMINTERVAL 100000 +USER admin +PWD 123456 FRAME_US 100000 SERVER 192.168.1.18:32000 TIMEOUT 250 diff --git a/extern.c b/extern.c index a8e165d..4df6579 100644 --- a/extern.c +++ b/extern.c @@ -4,7 +4,6 @@ void fire(void) { - system("echo bla"); system("xte \'key Return\'\n"); } diff --git a/main.c b/main.c index 1be3ec5..4ada16f 100644 --- a/main.c +++ b/main.c @@ -264,6 +264,8 @@ typedef struct henglongconf_t char joystickdevname[256]; in_addr_t ip; // v4 only char cam[64]; + char user[64]; + char pwd[64]; uint32_t caminterval; uint16_t port; uint8_t timeout; @@ -288,6 +290,8 @@ henglongconf_t getconfig(char* conffilename) conf.joystickdevname[0] = 0; conf.cam[0] = 0; conf.caminterval = 100000; + conf.user[0] = 0; + conf.pwd[0] = 0; while(fgets(line, 256, configFile)){ sscanf(line, "%16s %256s", parameter, value); if(0==strcmp(parameter,"KEYBOARD")){ @@ -299,6 +303,12 @@ henglongconf_t getconfig(char* conffilename) if(0==strcmp(parameter,"CAM")){ sscanf(value, "%64s", conf.cam); } + if(0==strcmp(parameter,"USER")){ + sscanf(value, "%64s", conf.user); + } + if(0==strcmp(parameter,"PWD")){ + sscanf(value, "%64s", conf.pwd); + } if(0==strcmp(parameter,"CAMINTERVAL")){ sscanf(value, "%" SCNu32, &conf.caminterval); } @@ -323,6 +333,8 @@ henglongconf_t getconfig(char* conffilename) typedef struct cam_ctrl_thread_t { char* ip; + char* username; + char* password; int up, down, cw, ccw, nul, end; uint32_t caminterval; } cam_ctrl_thread_t; @@ -338,12 +350,12 @@ void *cam_ctrl_thread_fcn(void* arg) while(!args->end){ usleep(args->caminterval); - if(args->up) cam_up(args->ip); - if(args->down) cam_down(args->ip); - if(args->cw) cam_cw(args->ip); - if(args->ccw) cam_ccw(args->ip); + if(args->up) cam_up(args->ip, args->username, args->password); + if(args->down) cam_down(args->ip, args->username, args->password); + if(args->cw) cam_cw(args->ip, args->username, args->password); + if(args->ccw) cam_ccw(args->ip, args->username, args->password); if(args->nul) { - cam_nul(args->ip); + cam_nul(args->ip, args->username, args->password); args->nul = 0; } } @@ -354,7 +366,6 @@ void *cam_ctrl_thread_fcn(void* arg) int main(int argc, char* argv[]) { - pthread_t keybthread, joythread, refl_thread, cam_ctrl_thread; input_thread_t keyboard_thread_args; input_thread_t joystick_thread_args; @@ -403,6 +414,8 @@ int main(int argc, char* argv[]) cam_ctrl_thread_args.end = 0; cam_ctrl_thread_args.ip = conf.cam; cam_ctrl_thread_args.caminterval = conf.caminterval; + cam_ctrl_thread_args.username = conf.user; + cam_ctrl_thread_args.password = conf.pwd; if (pthread_create(&cam_ctrl_thread, NULL, cam_ctrl_thread_fcn , (void *) &cam_ctrl_thread_args)) printf("failed to create cam_ctrl thread\n"); }else{ printf("no cam config!\n"); diff --git a/obj/Debug/extern.o b/obj/Debug/extern.o index eed5d9e303afbefb732d5edc1805cb3b56cdf987..db1b99022954dffe663813a3d4798384b595f6a5 100644 GIT binary patch delta 483 zcmYk1yGsK>5XN^lyLTJ);(6ByMshKlD}qFOUm$1%MJ#M2ViCj>jW)3m1fOVYn8qT# z76wGyAc7V)mV%X-|3EwOfzF;NF6{U1{C4ND6=%yi^x&wR>=3&*@#}Ivu{p;Wg98%1 z+#h3HnEDhEa&e_ZkzA*UD|xOB)RH!CX0!>@3Zan*p&Zbr%-j#Gk_p%$1qq~o9T>Dg zSIliJzl~T9an4Gfb{8ig)%!b#&X@{s`$z%aV-_jsO0*#xtQP09g`f~%1u}RGooMl( z;U9j1IIi(RG%PqA^Cq#*zre+MBqe(kV>U)b3Ub&je5prfbmQW(u*1l~ZIO~Qg!eEh zU91TkhVYKwJ`(E>S(CJ(4cnzJM`f-N(0LE$T|5p DV{cTk delta 460 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 literal 23264 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%0Deh%- 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 LN^mUdv)=y#R{G}9 diff --git a/obj/Debug/wansview.o b/obj/Debug/wansview.o index 4ee90a5962c5d3af1b7febc8eda3e641dc7cc432..34e1e9daff360a96b543a43a45c496e80f70a1d8 100644 GIT binary patch literal 9160 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 K|3dIN!T$w;D8V@Z literal 8628 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 e4exov{@1hafpN%rkJ>57dnx%l1&;}y5d2@r#BV -int wvcamctrl(char* ip, int cmd); -int cam_down(char* ip); -int cam_up(char* ip); -int cam_cw(char* ip); -int cam_ccw(char* ip); -int cam_nul(char* ip); +int wvcamctrl(char* ip, char* username, char* password, int cmd); +int cam_down(char* ip, char* username, char* password); +int cam_up(char* ip, char* username, char* password); +int cam_cw(char* ip, char* username, char* password); +int cam_ccw(char* ip, char* username, char* password); +int cam_nul(char* ip, char* username, char* password); #endif // WANSVIEW_H_INCLUDED