From a6cd9d39674398108f0760b2a95edaf279da8186 Mon Sep 17 00:00:00 2001 From: skarg Date: Tue, 2 May 2006 14:06:16 +0000 Subject: [PATCH] Updated ports/win32 demo for Visual C++ to compile and run with the latest example objects (BI, BO, and LSP). Cleaned up a couple of compile warnings, which corrected a bug in the Binary Output object. --- bacnet-stack/bacapp.c | 2 +- bacnet-stack/dcc.c | 2 +- bacnet-stack/demo/object/bo.c | 4 +- bacnet-stack/demo/readfile/readfile.ide | Bin 53354 -> 53354 bytes bacnet-stack/ports/win32/bacnet/bacnet.dsp | 24 +++ bacnet-stack/ports/win32/bacnet/bacnet.ncb | Bin 238592 -> 320512 bytes bacnet-stack/ports/win32/bacnet/bacnet.opt | Bin 53760 -> 54784 bytes bacnet-stack/ports/win32/bacnet/bacnet.plg | 184 ++++++++++++++++----- bacnet-stack/ports/win32/bip-init.c | 13 ++ 9 files changed, 186 insertions(+), 43 deletions(-) diff --git a/bacnet-stack/bacapp.c b/bacnet-stack/bacapp.c index 9921cbc4..749f364b 100644 --- a/bacnet-stack/bacapp.c +++ b/bacnet-stack/bacapp.c @@ -488,7 +488,7 @@ bool bacapp_parse_application_data(BACNET_APPLICATION_TAG tag_number, value->type.Signed_Int = long_value; } else if (tag_number == BACNET_APPLICATION_TAG_REAL) { double_value = strtod(argv, NULL); - value->type.Real = double_value; + value->type.Real = (float)double_value; } else if (tag_number == BACNET_APPLICATION_TAG_DOUBLE) { double_value = strtod(argv, NULL); value->type.Double = double_value; diff --git a/bacnet-stack/dcc.c b/bacnet-stack/dcc.c index c5b18bdc..9285af43 100644 --- a/bacnet-stack/dcc.c +++ b/bacnet-stack/dcc.c @@ -174,7 +174,7 @@ int dcc_decode_service_request(uint8_t * apdu, &len_value_type); len += decode_unsigned(&apdu[len], len_value_type, &value32); if (timeDuration) - *timeDuration = value32; + *timeDuration = (uint16_t)value32; } else if (timeDuration) *timeDuration = 0; /* Tag 1: enable_disable */ diff --git a/bacnet-stack/demo/object/bo.c b/bacnet-stack/demo/object/bo.c index 77f7edbc..0bb5fcd2 100644 --- a/bacnet-stack/demo/object/bo.c +++ b/bacnet-stack/demo/object/bo.c @@ -104,9 +104,9 @@ unsigned Binary_Output_Instance_To_Index(uint32_t object_instance) return index; } -static float Binary_Output_Present_Value(uint32_t object_instance) +static BACNET_BINARY_PV Binary_Output_Present_Value(uint32_t object_instance) { - float value = RELINQUISH_DEFAULT; + BACNET_BINARY_PV value = RELINQUISH_DEFAULT; unsigned index = 0; unsigned i = 0; diff --git a/bacnet-stack/demo/readfile/readfile.ide b/bacnet-stack/demo/readfile/readfile.ide index bec8f23edaf3c729995617e18bd6903795d644ec..ba4fbdc8476bfb6d6966b21e657d364edf4ad051 100644 GIT binary patch delta 3216 zcmZ8j3s6*L6yCdcU3L-+bbX{KxME^siD6=zD2Xm838pEA1}Yf&NW=wvg9`2fip0U0 z3Q!P~hsf*lQW4M|irFHvuxp{Uh0&;u={RMLPW|_ubA{X)I3M5lo$s9g-@U+{JpN7| zpE1Wld*G_V|6yB|{(+h^3vW3XIWAhbpy_qs)hRK)5X z#l$fh@ht43lyUz5Czi$Ol+%r{gZQzs(aiWtBRnL2oXpRU*YWp^7T6Gv$>U|ADISxb z5rensl#@&_Z5#3)vN82};@0!T8{2itXcH{kj-8X_&QivgnZUd~PWhV&=I@A8x~D)B zE8!_HZD*V^Ck4t`(Wb&HyW*6=sc>``Cd`l%9`4d952nJf-Em4y8l>+=*+-Ut-mO#m zrGa`6@^fVVgFQMvG0g%Ad+^Zj$ij6dG&13@J?y?&-JB51M<296Zvq&55b`hE}PRRNytUk9%zsUa$9J@Q>iD@8)>jGqgifnb5j!@<2)4DkdmX*gt< z-b3M6Qv`xVDFo_LFkUCeKTOF$%Yjtf7IbN}+cFuX5)hiw0y*hAE*Ery^Pw=rAGbmL zp}W#E7@3~UZ4kJ_w>gy~KZ}Dq85UKK2rhnVQ8lU<_#)Gy${N5x3|Lef)eJ1ivb^l) zFpG27I4F4bCBD?GhWJe9+FWKWjHS+l(*&d}KgLvtoe zIQ%0UEX)xkoy+x>>daidRFiYPBu~%Fc4*F>jh>?mC5}ynB}YRguIi|lRC}q8K888V zk0F1E>X*bnJ%(Ac^H7h?!=LN(u~;xd+%}F%XXv- zI*u=qxQPWp(ykH1x*(wdcfDDFvs?@DE+&n%!>Yo$&(2g-h%@blGo=jI6IfSK%|0>n znfE5)#0g#CdUCnM`w!@Z-6t{6z_Kr$#4|pn>Q#hiX=K`_B79$t5vLkuha1EVEXF?H zV$2F;T3Rvs&llqkS&aLaxG5#*|EL7-p_^%EO3;6|1kdX3Vuy*P_`ZvG8CHtBY-IfB zrC!eB-)HePs8yvHso*qo!T0n~a4FKjKc$Y(PCe)p-uUKIIPnD4AE-K);j|i-8dTOd zEx8PD{!$rEeZq9^bf4~h8hO9bcGyB#-11aEeEYOs+T$Sec$MQE(X*u-c@a1F!-Fa? z-@^QJ3A>E3!*;?E3|Ca(E!it@ei`FNRU-Fp3rNEi3&C480fqpLALs2aUmH#?+M_uWM^=?|*$j4PQwS?JRv2^TUxyC2^! zpg)VZ!b>%M{&_VxrgqqB@*&gY;;o52^3d1L{%VS&#ht_d{LKcOvw>u{d zVb3M);BXH4sHyGXOE|H?3_A&XW}2avu(res_X+#`)eRFHvA5-EC#)sh!#uf!L$+GM zO4w6t2j}zXf3%wYmL`0Sd6Lh2sl}(YSPM<(r%E5ujcaW1H(C4*R`6=VR=1(-7Y*Sa z<|!h4k9q7(81vOo7}<<5rnNSBzZqLIVy$qPaMUn6v=W{aVFSJeJtNlHU{(v>;M6!P zY;D0v$Kg=cf|1vly_f7ZW*K_{TPug#A(XHo(gsHe?~1oV+Xd-O7Y1DX*g-n!(h*>2 t#XPrd?7zxZ9Qk;J9c~kDWUGw2g8Wy^vzTxW`}1YIB7N9|Ggqnx{0HR>LdyUE delta 3237 zcmY+Fe{@V|8pr3o_mxZ;Yr<$#KVt-;QKPZU#QKq?X6UR?DY~?>ZCEXql3(P9AZg-v zc-WKO1cQ)4$d8E#Mlx)>8qE@9lG>(S<02M&iqo@e_r$T!ywCebn{$%qGvDv`dEWQF z_uk1vm-^797ETW3-Zow3%x|mgPeWLf#}=B;*ha(X)NMDVz#Cn-E>0FvJMobkknV18x+e;kCunRVPf2*DZe;!ZQdllUCo z9E9XqZk{<9A!2qNw?<-r`|JpXFC1!RyAuwo!_X;BsN>!sB);e4IZ+6abA5d3aD)d4 z`Vk1_^W3~92=nLH@l|ginBI4BQ#8)2d;d1$&qtzEvY?qay@}GQg`*X9G%BSZ`uGedJ@@F&63Z$41*Ri84o zrM4A%t+pF1+{Su{L=}T2t5ekyT?_nUb&C28)_H4E)I`<-*RYmgwI`#FwE?S1X@PMm zDQZocA1YGphNe&(8z2UqWuT-wej=P>FgMk#a23{}UZl6NK_Ymb!Bx~VRd|NF@f8~z zEOak}X=!G4vgtZ3OS2ma&=?|&3k>Sh96u528T3pyD|IT2O?Ma)y4qNj2sSX-@-xB5 z;QOBm7a6>@)~s}@Fn6uPklfA2qDAK=2FFpia=5xSRY~SBZC$ET$)O(0V-908QkAGK za0-j73k=OnRoc72{!E9#`wJV36%#Hqc$R5a!b9NItW+f-1a@RO4COs+Y@)Cm8QjS- zD}^BtlI<`=8f|Q{(62D~ZMIo;jqt!nn@h5E_YZ`r$GfchQ(7j2jI4Z2YTu@x6CipkreP_u~D88=In(2QQ&> z(-O6y_ib35yMpxA+=YgcWw&%XeV9%JC*~Ci=kVY27}uMy_505)ls;Ze9Zn3f-9 zu)e&BO@nn$@Uen*`4&SkI~(`l#s?N^^CJvJ6R%@p2#vjyZ{^$YVTS<)Q8aBvK~$(y z*MboXu-w<6u;5)X?iVBx%-k%YcC*D0+?*N5-^Tk0&o&ow2i^eqd`l5`1-E40Y9W}5 z5RS(ITM!BnJoQ_hOdN0M~X*@ z<=TqJ3GG3@0Q4>yCD>RNfOkqf!e{%&i8_9tUDUjNF_b^*hlYKVD6{_^p%t)y!kqmJ zgjTgbM$`^j`yZe=^A3={UDm%y{lx*AHOWPOiisSi6ypMQ6d_F??!J`_vM ze~|V#@X#W$_J%{WulCg%+&nZ#Xu}W3i@ipsXt4e;?e)9EwAR2dFeR&@=?0R7qZ5b z(Y5%{TTw>$<$%=mZa>_TS~oZK#kpzLEcCXzDSyFDdniKfrPM|rqx|oW(K*~k@9Z(k zKRQO&Iytiyh99T<9-X1VqT{re0@VL>JSHsoPy24Brt99wb$xV9KLz4W_J)3CdidXQ zgSfipR1LbHpc7wtf>t~t>$kFomD6g?I5obURx8QYAg`QG{&G338lKe(>?HXKIU0;R zNqQpcpGh`s)Zm2VFE(j#@1$Mq!;P7kQ?yQIo(7+tB7IE01`U!Q7vNqiX#Nw-PmyfR zZiTgybC4@4=#&B#wEkD9^{piBHYV%R+Rz>qWhiMR3Mdy)LMRQ!} zS4rP=uLC+HKR~^IHO-H&rmQ8W6*gDXtkNxb4bp#FP1l%?{wNRm3%6;oSh5fGV#%f* z8eI2K{%(W@J!&Z5v{Qq(YiOP5LHH)r(ArfslubtM2bs;?rNNNXbR7#$Q;!$@y{Bo` zuRw#ZrO#?9H?Ed)+>H03mU2Jt(V(oB*108pC;Gk4kYD~s4W^$VKjRGb??L~x^plD- zcyxx|@L$%^I?H4|C~I3C^|fPP*jbvJh~IYhv!sW=(gqtOH{mzld71I{55QB&rHA}5 z>>Ty_vhbTg@;8`)b8H|;sVen*@Al51{awLwtc2V4PPnS!d zgo-PT*agXrG;dW=04f@3$r{Ywlk7VXfWB8q??ipJWaqm#A^(ba*gR*iRCW13^D)}g diff --git a/bacnet-stack/ports/win32/bacnet/bacnet.dsp b/bacnet-stack/ports/win32/bacnet/bacnet.dsp index 15367ab6..8616c621 100644 --- a/bacnet-stack/ports/win32/bacnet/bacnet.dsp +++ b/bacnet-stack/ports/win32/bacnet/bacnet.dsp @@ -137,6 +137,14 @@ SOURCE=..\..\..\bactext.c # End Source File # Begin Source File +SOURCE=..\..\..\demo\object\bi.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\demo\object\bi.h +# End Source File +# Begin Source File + SOURCE=..\..\..\bigend.c # End Source File # Begin Source File @@ -149,6 +157,14 @@ SOURCE=..\..\..\bip.c # End Source File # Begin Source File +SOURCE=..\..\..\demo\object\bo.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\demo\object\bo.h +# End Source File +# Begin Source File + SOURCE=..\..\..\crc.c # End Source File # Begin Source File @@ -201,6 +217,14 @@ SOURCE=..\..\..\indtext.c # End Source File # Begin Source File +SOURCE=..\..\..\demo\object\lsp.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\demo\object\lsp.h +# End Source File +# Begin Source File + SOURCE=..\main.c # End Source File # Begin Source File diff --git a/bacnet-stack/ports/win32/bacnet/bacnet.ncb b/bacnet-stack/ports/win32/bacnet/bacnet.ncb index af86a066a339c46413d4d64ba62e15ac4f242ebf..c0c0a8bea5ee627a9b9d51b74d2af12c405f7043 100644 GIT binary patch delta 76421 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 literal 53760 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 ch@ts^;w76l(!h(V0mA

Command Lines

-Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58A.tmp" with contents +Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP3A6.tmp" with contents [ -/nologo /MLd /W3 /Gm /GX /ZI /Od /I "c:\code\bacnet-stack\demo\object" /I "c:\code\bacnet-stack\\" /I "c:\code\bacnet-stack\ports\win32\\" /I "c:\code\bacnet-stack\demo\object\\" /I "c:\code\bacnet-stack\demo\handler\\" /D "_DEBUG" /D "BACDL_BIP" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /FR"Debug/" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c +/nologo /MLd /W3 /Gm /GX /ZI /Od /I "..\..\.." /I ".." /I "..\..\..\demo\object\\" /I "..\..\..\demo\handler\\" /D "_DEBUG" /D "BACDL_BIP" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D TSM_ENABLED=1 /FR"Debug/" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c +"C:\code\bacnet-stack\abort.c" +"C:\code\bacnet-stack\address.c" +"C:\code\bacnet-stack\demo\object\ai.c" +"C:\code\bacnet-stack\demo\object\ao.c" +"C:\code\bacnet-stack\apdu.c" +"C:\code\bacnet-stack\arf.c" +"C:\code\bacnet-stack\bacapp.c" +"C:\code\bacnet-stack\bacdcode.c" +"C:\code\bacnet-stack\bacerror.c" +"C:\code\bacnet-stack\demo\object\bacfile.c" +"C:\code\bacnet-stack\bacstr.c" +"C:\code\bacnet-stack\bactext.c" +"C:\code\bacnet-stack\bigend.c" +"C:\code\bacnet-stack\ports\win32\bip-init.c" +"C:\code\bacnet-stack\bip.c" +"C:\code\bacnet-stack\crc.c" +"C:\code\bacnet-stack\datalink.c" +"C:\code\bacnet-stack\dcc.c" +"C:\code\bacnet-stack\demo\object\device.c" +"C:\code\bacnet-stack\demo\handler\h_arf.c" +"C:\code\bacnet-stack\demo\handler\h_arf_a.c" +"C:\code\bacnet-stack\demo\handler\h_iam.c" +"C:\code\bacnet-stack\demo\handler\h_rp.c" +"C:\code\bacnet-stack\demo\handler\h_rp_a.c" +"C:\code\bacnet-stack\demo\handler\h_whois.c" +"C:\code\bacnet-stack\demo\handler\h_wp.c" +"C:\code\bacnet-stack\iam.c" +"C:\code\bacnet-stack\indtext.c" "C:\code\bacnet-stack\ports\win32\main.c" +"C:\code\bacnet-stack\demo\handler\noserv.c" +"C:\code\bacnet-stack\npdu.c" +"C:\code\bacnet-stack\reject.c" +"C:\code\bacnet-stack\ringbuf.c" +"C:\code\bacnet-stack\rp.c" +"C:\code\bacnet-stack\demo\handler\s_rp.c" +"C:\code\bacnet-stack\demo\handler\s_whois.c" +"C:\code\bacnet-stack\demo\handler\s_wp.c" +"C:\code\bacnet-stack\tsm.c" +"C:\code\bacnet-stack\demo\handler\txbuf.c" +"C:\code\bacnet-stack\whois.c" +"C:\code\bacnet-stack\wp.c" +"C:\code\bacnet-stack\demo\object\bi.c" +"C:\code\bacnet-stack\demo\object\bo.c" +"C:\code\bacnet-stack\demo\object\lsp.c" ] -Creating command line "cl.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58A.tmp" -Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58B.tmp" with contents +Creating command line "cl.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP3A6.tmp" +Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP3A7.tmp" with contents [ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/bacnet.pdb" /debug /machine:I386 /out:"Debug/bacnet.exe" /pdbtype:sept ".\Debug\abort.obj" @@ -32,21 +75,8 @@ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32 ".\Debug\bip.obj" ".\Debug\crc.obj" ".\Debug\datalink.obj" +".\Debug\dcc.obj" ".\Debug\device.obj" -".\Debug\iam.obj" -".\Debug\indtext.obj" -".\Debug\main.obj" -".\Debug\npdu.obj" -".\Debug\reject.obj" -".\Debug\ringbuf.obj" -".\Debug\rp.obj" -".\Debug\tsm.obj" -".\Debug\whois.obj" -".\Debug\wp.obj" -".\Debug\s_rp.obj" -".\Debug\s_whois.obj" -".\Debug\s_wp.obj" -".\Debug\txbuf.obj" ".\Debug\h_arf.obj" ".\Debug\h_arf_a.obj" ".\Debug\h_iam.obj" @@ -54,16 +84,88 @@ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32 ".\Debug\h_rp_a.obj" ".\Debug\h_whois.obj" ".\Debug\h_wp.obj" +".\Debug\iam.obj" +".\Debug\indtext.obj" +".\Debug\main.obj" ".\Debug\noserv.obj" +".\Debug\npdu.obj" +".\Debug\reject.obj" +".\Debug\ringbuf.obj" +".\Debug\rp.obj" +".\Debug\s_rp.obj" +".\Debug\s_whois.obj" +".\Debug\s_wp.obj" +".\Debug\tsm.obj" +".\Debug\txbuf.obj" +".\Debug\whois.obj" +".\Debug\wp.obj" +".\Debug\bi.obj" +".\Debug\bo.obj" +".\Debug\lsp.obj" ] -Creating command line "link.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58B.tmp" +Creating command line "link.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP3A7.tmp"

Output Window

Compiling... +abort.c +address.c +ai.c +c:\code\bacnet-stack\demo\object\ai.c(87) : warning C4305: 'initializing' : truncation from 'const double ' to 'float ' +ao.c +c:\code\bacnet-stack\demo\object\ao.c(163) : warning C4305: 'initializing' : truncation from 'const double ' to 'float ' +apdu.c +arf.c +bacapp.c +bacdcode.c +bacerror.c +bacfile.c +bacstr.c +bactext.c +bigend.c +bip-init.c +bip.c +crc.c +datalink.c +dcc.c +device.c +h_arf.c +Generating Code... +c:\code\bacnet-stack\demo\object\bacfile.c(263) : warning C4761: integral size mismatch in argument; conversion supplied +c:\code\bacnet-stack\bacapp.c(444) : warning C4761: integral size mismatch in argument; conversion supplied +Compiling... +h_arf_a.c +h_iam.c +h_rp.c +h_rp_a.c +h_whois.c +h_wp.c +iam.c +indtext.c main.c -c:\code\bacnet-stack\ports\win32\net.h(30) : warning C4005: 'STRICT' : macro redefinition - c:\program files\microsoft visual studio\vc98\include\windef.h(15) : see previous definition of 'STRICT' +noserv.c +npdu.c +reject.c +ringbuf.c +rp.c +s_rp.c +s_whois.c +s_wp.c +tsm.c +txbuf.c +whois.c +Generating Code... +c:\code\bacnet-stack\demo\handler\s_wp.c(92) : warning C4761: integral size mismatch in argument; conversion supplied +c:\code\bacnet-stack\demo\handler\s_rp.c(88) : warning C4761: integral size mismatch in argument; conversion supplied +c:\code\bacnet-stack\npdu.c(289) : warning C4761: integral size mismatch in argument; conversion supplied +c:\code\bacnet-stack\demo\handler\h_rp_a.c(73) : warning C4761: integral size mismatch in argument; conversion supplied +Compiling... +wp.c +bi.c +bo.c +lsp.c +Generating Code... +c:\code\bacnet-stack\wp.c(121) : warning C4761: integral size mismatch in argument; conversion supplied Linking... -Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58C.tmp" with contents +Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP3A9.tmp" with contents [ /nologo /o"Debug/bacnet.bsc" ".\Debug\abort.sbr" @@ -83,21 +185,8 @@ Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58C.tmp" with conten ".\Debug\bip.sbr" ".\Debug\crc.sbr" ".\Debug\datalink.sbr" +".\Debug\dcc.sbr" ".\Debug\device.sbr" -".\Debug\iam.sbr" -".\Debug\indtext.sbr" -".\Debug\main.sbr" -".\Debug\npdu.sbr" -".\Debug\reject.sbr" -".\Debug\ringbuf.sbr" -".\Debug\rp.sbr" -".\Debug\tsm.sbr" -".\Debug\whois.sbr" -".\Debug\wp.sbr" -".\Debug\s_rp.sbr" -".\Debug\s_whois.sbr" -".\Debug\s_wp.sbr" -".\Debug\txbuf.sbr" ".\Debug\h_arf.sbr" ".\Debug\h_arf_a.sbr" ".\Debug\h_iam.sbr" @@ -105,15 +194,32 @@ Creating temporary file "C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58C.tmp" with conten ".\Debug\h_rp_a.sbr" ".\Debug\h_whois.sbr" ".\Debug\h_wp.sbr" -".\Debug\noserv.sbr"] -Creating command line "bscmake.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP58C.tmp" +".\Debug\iam.sbr" +".\Debug\indtext.sbr" +".\Debug\main.sbr" +".\Debug\noserv.sbr" +".\Debug\npdu.sbr" +".\Debug\reject.sbr" +".\Debug\ringbuf.sbr" +".\Debug\rp.sbr" +".\Debug\s_rp.sbr" +".\Debug\s_whois.sbr" +".\Debug\s_wp.sbr" +".\Debug\tsm.sbr" +".\Debug\txbuf.sbr" +".\Debug\whois.sbr" +".\Debug\wp.sbr" +".\Debug\bi.sbr" +".\Debug\bo.sbr" +".\Debug\lsp.sbr"] +Creating command line "bscmake.exe @C:\DOCUME~1\stk01\LOCALS~1\Temp\RSP3A9.tmp" Creating browse info file...

Output Window

Results

-bacnet.exe - 0 error(s), 1 warning(s) +bacnet.exe - 0 error(s), 9 warning(s) diff --git a/bacnet-stack/ports/win32/bip-init.c b/bacnet-stack/ports/win32/bip-init.c index 00c38cd2..b011d98a 100644 --- a/bacnet-stack/ports/win32/bip-init.c +++ b/bacnet-stack/ports/win32/bip-init.c @@ -159,6 +159,19 @@ bool bip_init(void) bip_set_socket(-1); return false; } + #if 0 + /* probably only for Apple... */ + /* rebind a port that is already in use. + Note: all users of the port must specify this flag */ + rv = setsockopt(sock_fd, SOL_SOCKET, SO_REUSEPORT, + (char *) &value, sizeof(value)); + if (rv < 0) { + fprintf(stderr, "bip: failed to set REUSEPORT socket option.\n"); + close(sock_fd); + bip_set_socket(-1); + return false; + } + #endif /* bind the socket to the local port number and IP address */ sin.sin_family = AF_INET; #if USE_INADDR