From b088fe276bba97f2ca4c52deb056a4d809b2dd71 Mon Sep 17 00:00:00 2001 From: Serge Camille Date: Sat, 12 Sep 2020 19:27:15 +0200 Subject: [PATCH 1/7] Rename StringEx to S7String. This name is already somewhat used in code and gives this a better name. --- .../{StringExTests.cs => S7StringTests.cs} | 12 ++-- S7.Net/Enums.cs | 6 +- S7.Net/PLCHelpers.cs | 6 +- S7.Net/Protocol/Serialization.cs | 4 +- S7.Net/Types/S7String.cs | 69 +++++++++++++++++++ S7.Net/Types/String.cs | 2 +- S7.Net/Types/StringEx.cs | 67 ++---------------- 7 files changed, 90 insertions(+), 76 deletions(-) rename S7.Net.UnitTest/TypeTests/{StringExTests.cs => S7StringTests.cs} (90%) create mode 100644 S7.Net/Types/S7String.cs diff --git a/S7.Net.UnitTest/TypeTests/StringExTests.cs b/S7.Net.UnitTest/TypeTests/S7StringTests.cs similarity index 90% rename from S7.Net.UnitTest/TypeTests/StringExTests.cs rename to S7.Net.UnitTest/TypeTests/S7StringTests.cs index aecf905..0bc8ef9 100644 --- a/S7.Net.UnitTest/TypeTests/StringExTests.cs +++ b/S7.Net.UnitTest/TypeTests/S7StringTests.cs @@ -7,7 +7,7 @@ using System.Linq; namespace S7.Net.UnitTest.TypeTests { [TestClass] - public class StringExTests + public class S7StringTests { [TestMethod] public void ReadEmptyStringWithZeroByteLength() @@ -36,7 +36,7 @@ namespace S7.Net.UnitTest.TypeTests [TestMethod] public void ReadMalformedStringSizeLargerThanCapacity() { - Assert.ThrowsException(() => StringEx.FromByteArray(new byte[] { 3, 5, 0, 1, 2 })); + Assert.ThrowsException(() => S7String.FromByteArray(new byte[] { 3, 5, 0, 1, 2 })); } [TestMethod] @@ -102,7 +102,7 @@ namespace S7.Net.UnitTest.TypeTests [TestMethod] public void WriteAbcWithStringLargetThanReservedLength() { - Assert.ThrowsException(() => StringEx.ToByteArray("Abc", 2)); + Assert.ThrowsException(() => S7String.ToByteArray("Abc", 2)); } [TestMethod] @@ -119,16 +119,16 @@ namespace S7.Net.UnitTest.TypeTests private static void AssertFromByteArrayEquals(string expected, params byte[] bytes) { - var convertedString = StringEx.FromByteArray(bytes); + var convertedString = S7String.FromByteArray(bytes); Assert.AreEqual(expected, convertedString); } private static void AssertToByteArrayAndBackEquals(string value, int reservedLength, params byte[] expected) { - var convertedData = StringEx.ToByteArray(value, reservedLength); + var convertedData = S7String.ToByteArray(value, reservedLength); CollectionAssert.AreEqual(expected, convertedData); - var convertedBack = StringEx.FromByteArray(convertedData); + var convertedBack = S7String.FromByteArray(convertedData); Assert.AreEqual(value, convertedBack); } } diff --git a/S7.Net/Enums.cs b/S7.Net/Enums.cs index fdb96ff..c523ad7 100644 --- a/S7.Net/Enums.cs +++ b/S7.Net/Enums.cs @@ -169,14 +169,14 @@ LReal, /// - /// String variable type (variable) + /// Char Array / C-String variable type (variable) /// String, /// - /// String variable type (variable) + /// S7 String variable type (variable) /// - StringEx, + S7String, /// /// Timer variable type diff --git a/S7.Net/PLCHelpers.cs b/S7.Net/PLCHelpers.cs index ae1ff29..f2c757d 100644 --- a/S7.Net/PLCHelpers.cs +++ b/S7.Net/PLCHelpers.cs @@ -122,8 +122,8 @@ namespace S7.Net case VarType.String: return Types.String.FromByteArray(bytes); - case VarType.StringEx: - return StringEx.FromByteArray(bytes); + case VarType.S7String: + return S7String.FromByteArray(bytes); case VarType.Timer: if (varCount == 1) @@ -186,7 +186,7 @@ namespace S7.Net return (varCount < 1) ? 1 : varCount; case VarType.String: return varCount; - case VarType.StringEx: + case VarType.S7String: return varCount + 2; case VarType.Word: case VarType.Timer: diff --git a/S7.Net/Protocol/Serialization.cs b/S7.Net/Protocol/Serialization.cs index b9ac9a5..ceecaa6 100644 --- a/S7.Net/Protocol/Serialization.cs +++ b/S7.Net/Protocol/Serialization.cs @@ -18,8 +18,8 @@ namespace S7.Net.Protocol throw new Exception($"DataItem.Value is null, cannot serialize. StartAddr={dataItem.StartByteAdr} VarType={dataItem.VarType}"); } if (dataItem.Value is string s) - return dataItem.VarType == VarType.StringEx - ? StringEx.ToByteArray(s, dataItem.Count) + return dataItem.VarType == VarType.S7String + ? S7String.ToByteArray(s, dataItem.Count) : Types.String.ToByteArray(s, dataItem.Count); return SerializeValue(dataItem.Value); diff --git a/S7.Net/Types/S7String.cs b/S7.Net/Types/S7String.cs new file mode 100644 index 0000000..6210e53 --- /dev/null +++ b/S7.Net/Types/S7String.cs @@ -0,0 +1,69 @@ +using System; +using System.Text; + +namespace S7.Net.Types +{ + /// + /// Contains the methods to convert from S7 strings to C# strings + /// An S7 String has a preceeding 2 byte header containing its capacity and length + /// + public static class S7String + { + /// + /// Converts S7 bytes to a string + /// + /// + /// + public static string FromByteArray(byte[] bytes) + { + if (bytes.Length < 2) + { + throw new PlcException(ErrorCode.ReadData, "Malformed S7 String / too short"); + } + + int size = bytes[0]; + int length = bytes[1]; + if (length > size) + { + throw new PlcException(ErrorCode.ReadData, "Malformed S7 String / length larger than capacity"); + } + + try + { + return Encoding.ASCII.GetString(bytes, 2, length); + } + catch (Exception e) + { + throw new PlcException(ErrorCode.ReadData, + $"Failed to parse {VarType.S7String} from data. Following fields were read: size: '{size}', actual length: '{length}', total number of bytes (including header): '{bytes.Length}'.", + e); + } + + } + + /// + /// Converts a to S7 string with 2-byte header. + /// + /// The string to convert to byte array. + /// The length (in bytes) allocated in PLC for string excluding header. + /// A containing the string header and string value with a maximum length of + 2. + public static byte[] ToByteArray(string value, int reservedLength) + { + if (value is null) + { + throw new ArgumentNullException(nameof(value)); + } + + if (reservedLength > byte.MaxValue) throw new ArgumentException($"The maximum string length supported is {byte.MaxValue}."); + + var bytes = Encoding.ASCII.GetBytes(value); + if (bytes.Length > reservedLength) throw new ArgumentException($"The provided string length ({bytes.Length} is larger than the specified reserved length ({reservedLength})."); + + var buffer = new byte[2 + reservedLength]; + Array.Copy(bytes, 0, buffer, 2, bytes.Length); + buffer[0] = (byte)reservedLength; + buffer[1] = (byte)bytes.Length; + return buffer; + } + } +} diff --git a/S7.Net/Types/String.cs b/S7.Net/Types/String.cs index aaf3428..3917635 100644 --- a/S7.Net/Types/String.cs +++ b/S7.Net/Types/String.cs @@ -1,7 +1,7 @@ namespace S7.Net.Types { /// - /// Contains the methods to convert from S7 strings to C# strings + /// Contains the methods to convert from S7 Array of Chars (like a const char[N] C-String) to C# strings /// public class String { diff --git a/S7.Net/Types/StringEx.cs b/S7.Net/Types/StringEx.cs index 5f152b2..6c0381a 100644 --- a/S7.Net/Types/StringEx.cs +++ b/S7.Net/Types/StringEx.cs @@ -1,70 +1,15 @@ using System; -using System.Text; namespace S7.Net.Types { - /// - /// Contains the methods to convert from S7 strings to C# strings - /// there are two kinds how strings a send. This one is with a pre of two bytes - /// they contain the length of the string - /// + /// + [Obsolete("Please use S7String class")] public static class StringEx { - /// - /// Converts S7 bytes to a string - /// - /// - /// - public static string FromByteArray(byte[] bytes) - { - if (bytes.Length < 2) - { - throw new PlcException(ErrorCode.ReadData, "Malformed S7 String / too short"); - } + /// + public static string FromByteArray(byte[] bytes) => S7String.FromByteArray(bytes); - int size = bytes[0]; - int length = bytes[1]; - if (length > size) - { - throw new PlcException(ErrorCode.ReadData, "Malformed S7 String / length larger than capacity"); - } - - try - { - return Encoding.ASCII.GetString(bytes, 2, length); - } - catch (Exception e) - { - throw new PlcException(ErrorCode.ReadData, - $"Failed to parse {VarType.StringEx} from data. Following fields were read: size: '{size}', actual length: '{length}', total number of bytes (including header): '{bytes.Length}'.", - e); - } - - } - - /// - /// Converts a to S7 string with 2-byte header. - /// - /// The string to convert to byte array. - /// The length (in bytes) allocated in PLC for string excluding header. - /// A containing the string header and string value with a maximum length of + 2. - public static byte[] ToByteArray(string value, int reservedLength) - { - if (value is null) - { - throw new ArgumentNullException(nameof(value)); - } - - if (reservedLength > byte.MaxValue) throw new ArgumentException($"The maximum string length supported is {byte.MaxValue}."); - - var bytes = Encoding.ASCII.GetBytes(value); - if (bytes.Length > reservedLength) throw new ArgumentException($"The provided string length ({bytes.Length} is larger than the specified reserved length ({reservedLength})."); - - var buffer = new byte[2 + reservedLength]; - Array.Copy(bytes, 0, buffer, 2, bytes.Length); - buffer[0] = (byte)reservedLength; - buffer[1] = (byte)bytes.Length; - return buffer; - } + /// + public static byte[] ToByteArray(string value, int reservedLength) => S7String.ToByteArray(value, reservedLength); } } From 12a2e3c0b19e90a9455f56f3f4065a87453fe806 Mon Sep 17 00:00:00 2001 From: Serge Camille Date: Sun, 13 Sep 2020 09:57:13 +0200 Subject: [PATCH 2/7] Fix runtime error on linux with default Socket timeouts. The default value for socket timeout API is 0 and not -1, so revert to that value to give the intended infinite timeout on all platforms. --- S7.Net/PLC.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/S7.Net/PLC.cs b/S7.Net/PLC.cs index e4a7f7f..96f2474 100644 --- a/S7.Net/PLC.cs +++ b/S7.Net/PLC.cs @@ -18,8 +18,8 @@ namespace S7.Net private TcpClient? tcpClient; private NetworkStream? _stream; - private int readTimeout = System.Threading.Timeout.Infinite; - private int writeTimeout = System.Threading.Timeout.Infinite; + private int readTimeout = 0; // default no timeout + private int writeTimeout = 0; // default no timeout /// /// IP address of the PLC From 9198fc168659934792d1b70e029c95a9c652f9e1 Mon Sep 17 00:00:00 2001 From: Serge Camille Date: Sun, 13 Sep 2020 10:01:38 +0200 Subject: [PATCH 3/7] Test project: Enable netcore3.1 testing, switch win64 Snap7 and use custom port. - Add netcoreapp3.1 target framework, allowing this to run on linux and macos as well. - Switch windows snap7 DLL to 64bit version 1.4.2. This also improves UnitTest stability (reduces false positives) on the CI (including appveyor) - Changing the port used for S7NetTests when communicating with Snap7 to a value > 1000 allows tests to run on Linux without elevated privileges. --- S7.Net.UnitTest/Helpers/S7TestServer.cs | 9 +++++++- S7.Net.UnitTest/S7.Net.UnitTest.csproj | 11 +++++----- S7.Net.UnitTest/S7NetTestsAsync.cs | 4 +++- S7.Net.UnitTest/S7NetTestsSync.cs | 20 +++++++++++++----- S7.Net.UnitTest/Snap7/snap7.net.cs | 7 ++---- .../runtimes/win-x64/native/snap7.dll | Bin 0 -> 244224 bytes S7.Net.UnitTest/snap7.dll | Bin 209920 -> 0 bytes 7 files changed, 34 insertions(+), 17 deletions(-) create mode 100644 S7.Net.UnitTest/runtimes/win-x64/native/snap7.dll delete mode 100644 S7.Net.UnitTest/snap7.dll diff --git a/S7.Net.UnitTest/Helpers/S7TestServer.cs b/S7.Net.UnitTest/Helpers/S7TestServer.cs index 8db9328..401587f 100644 --- a/S7.Net.UnitTest/Helpers/S7TestServer.cs +++ b/S7.Net.UnitTest/Helpers/S7TestServer.cs @@ -29,7 +29,7 @@ namespace S7.Net.UnitTest.Helpers Console.WriteLine(Server.EventText(ref Event)); } - public static void Start() + public static void Start(short port) { Server = new S7Server(); // Share some resources with our virtual PLC @@ -59,7 +59,14 @@ namespace S7.Net.UnitTest.Helpers // Start the server onto the default adapter. // To select an adapter we have to use Server->StartTo("192.168.x.y"). // Start() is the same of StartTo("0.0.0.0"); + + Server.SetParam(S7Consts.p_u16_LocalPort, ref port); + int Error = Server.Start(); + if (Error != 0) + { + throw new Exception($"Error starting Snap7 server: {Server.ErrorText(Error)}"); + } //if (Error == 0) //{ // // Now the server is running ... wait a key to terminate diff --git a/S7.Net.UnitTest/S7.Net.UnitTest.csproj b/S7.Net.UnitTest/S7.Net.UnitTest.csproj index 70f0e07..abbf6c5 100644 --- a/S7.Net.UnitTest/S7.Net.UnitTest.csproj +++ b/S7.Net.UnitTest/S7.Net.UnitTest.csproj @@ -1,15 +1,17 @@  - net452 + net452;netcoreapp3.1 true Properties\S7.Net.snk false Copyright © 2014 + x64 - + + @@ -23,14 +25,13 @@ - + - + PreserveNewest - diff --git a/S7.Net.UnitTest/S7NetTestsAsync.cs b/S7.Net.UnitTest/S7NetTestsAsync.cs index 604e2bb..d317533 100644 --- a/S7.Net.UnitTest/S7NetTestsAsync.cs +++ b/S7.Net.UnitTest/S7NetTestsAsync.cs @@ -6,10 +6,12 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; using S7.Net; using S7.Net.UnitTest.Helpers; using S7.Net.UnitTest; -using System.ServiceProcess; using S7.Net.Types; using S7.UnitTest.Helpers; using System.Threading.Tasks; +#if NETFRAMEWORK +using System.ServiceProcess; +#endif using System.Threading; #endregion diff --git a/S7.Net.UnitTest/S7NetTestsSync.cs b/S7.Net.UnitTest/S7NetTestsSync.cs index fd63448..8d713a5 100644 --- a/S7.Net.UnitTest/S7NetTestsSync.cs +++ b/S7.Net.UnitTest/S7NetTestsSync.cs @@ -6,9 +6,11 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; using S7.Net; using S7.Net.UnitTest.Helpers; using S7.Net.UnitTest; -using System.ServiceProcess; using S7.Net.Types; using S7.UnitTest.Helpers; +#if NETFRAMEWORK +using System.ServiceProcess; +#endif #endregion @@ -41,6 +43,7 @@ namespace S7.Net.UnitTest #region Constants const int DB2 = 2; const int DB4 = 4; + const short TestServerPort = 31122; #endregion #region Private fields @@ -53,16 +56,21 @@ namespace S7.Net.UnitTest /// public S7NetTests() { - plc = new Plc(CpuType.S7300, "127.0.0.1", 0, 2); + plc = CreatePlc(); //ConsoleManager.Show(); ShutDownServiceS7oiehsx64(); } + private static Plc CreatePlc() + { + return new Plc(CpuType.S7300, "localhost", TestServerPort, 0, 2); + } + [TestInitialize] public void Setup() { - S7TestServer.Start(); + S7TestServer.Start(TestServerPort); plc.Open(); } @@ -931,9 +939,9 @@ namespace S7.Net.UnitTest { plc.Close(); S7TestServer.Stop(); - S7TestServer.Start(); + S7TestServer.Start(TestServerPort); - var reachablePlc = new Plc(CpuType.S7300, "127.0.0.1", 0, 2); + var reachablePlc = CreatePlc(); Assert.IsTrue(reachablePlc.IsAvailable); } @@ -1028,6 +1036,7 @@ namespace S7.Net.UnitTest #region Private methods private static void ShutDownServiceS7oiehsx64() { +#if NETFRAMEWORK ServiceController[] services = ServiceController.GetServices(); var service = services.FirstOrDefault(s => s.ServiceName == "s7oiehsx64"); if (service != null) @@ -1037,6 +1046,7 @@ namespace S7.Net.UnitTest service.Stop(); } } +#endif } #region IDisposable Support diff --git a/S7.Net.UnitTest/Snap7/snap7.net.cs b/S7.Net.UnitTest/Snap7/snap7.net.cs index 98efa75..b6ae831 100644 --- a/S7.Net.UnitTest/Snap7/snap7.net.cs +++ b/S7.Net.UnitTest/Snap7/snap7.net.cs @@ -36,11 +36,8 @@ namespace Snap7 public class S7Consts { - #if __MonoCS__ // Assuming that we are using Unix release of Mono (otherwise modify it) - public const string Snap7LibName = "libsnap7.so"; - #else - public const string Snap7LibName = "snap7.dll"; - #endif + public const string Snap7LibName = "snap7"; + //------------------------------------------------------------------------------ // PARAMS LIST //------------------------------------------------------------------------------ diff --git a/S7.Net.UnitTest/runtimes/win-x64/native/snap7.dll b/S7.Net.UnitTest/runtimes/win-x64/native/snap7.dll new file mode 100644 index 0000000000000000000000000000000000000000..e1baafc78db2451fd4baf740c5216ee98bdf27be GIT binary patch literal 244224 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 z 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�zgecaulEXXxF8P+!c19%nX?&d4#5e5klW9`*NkWc{WDO@k@i!{0wo0u zj9kH2pk#c|{dA=UWy}noof8SnZ(Bcwh@Ds4#&a0gswKAj?M|<@qc;tSLrK>N=iBsn zA?=?=C8RPuj}yKV13@991679Ykc9P}xQ%*%^_^%}sqGcpG9%FX3nK6eDuKokCnqZS z^ETpxb8PG*1$o>;*4?kFnM!hZL4F1#)y5oev7R!OaTw_<=1m;Iow!n1iJP&`Br|;i zt-IkN_V3IaQjQ=$4-!lPmMB2A2mc(ZDRdRjPAG1{9~69V;P~BzMd|etZj$!^yqgmx zh;{Rpn;;-Cmq=Af^M+=+Fl8UxO8R70C9T8C^ddT55uv;l|FeHgdmk!q3}bm0PzgQk zGI^_x;5`z7_Pq1teVz4g&&2&92YV-`S??P%{l%B$eUkOwA0yw3^gZrXT3|QQJ(kV z^8UT`evp2<=e?V}?fQ|@BascyTlc*tnk@EASmt?utV;(kw%%b>pXdFmyic~?Ph_y4 zk@pzueQSnQ56j!MknN?5Z%IdTv%HJJM$wE>e|b-J{G_$W_F`(Cm)OO^`-k=Z8tv|R zpDgbetoJs0W}f#Ld215`Ch;V%BYU*hkqvnr*~Uqv@Z$_6eHA8VqZ*S*cte6g6B{u#<8}*ysWXdBaTgvwK3(Tp)$tgTwW|NNY8HB zA$l`750XaNG|LqvC5F#yN12hjsGr$aEqQ<5j@;)=Z7~RLC%0J3T=c5Xw>QtxJg4)_ z;Q0y9{XEWVKHmd8Pvd@u_v<`saevOccrEuT^7O;~8Gifl4)c9B&oQ{K;C&0v8MrU! zdBlYmL-U5_{Auq;pP_w=`t=_$P=Mm0I|YI{7<`lr+Ii^U-k#t3yY$~;4jH;jSq5QO z_;LB`KHnESgWvG^bZq7R%n%)g`!xK{T<7!M!ShS}zThm+AHC!A?fZAK^|qJ4yq)rQ zDk$7(r=9#f`s>rzzRhn@KfU^A`TW<;0skSyz$|$2ywjljGM+fkuX�Q8~QE`%|6) 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 literal 0 HcmV?d00001 diff --git a/S7.Net.UnitTest/snap7.dll b/S7.Net.UnitTest/snap7.dll deleted file mode 100644 index d52c361ea4c2cf7581e1f755ee683558b8a632b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 209920 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�zh5$A_bXPPO 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 z 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�Cn*!| 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 ON5DtGN8tYgfqw&>FvYh3 From 023530322e4fc7447d67c7bd6a19f7eafd7e4702 Mon Sep 17 00:00:00 2001 From: Serge Camille Date: Sun, 13 Sep 2020 10:15:53 +0200 Subject: [PATCH 4/7] Remove Port 102 dependencies from Unit Test. - Adjust readme. - It is no longer be necessary to shut down service s7oiehsx64. --- README.md | 5 ++--- S7.Net.UnitTest/S7.Net.UnitTest.csproj | 4 ---- S7.Net.UnitTest/S7NetTestsAsync.cs | 6 ------ S7.Net.UnitTest/S7NetTestsSync.cs | 22 ---------------------- 4 files changed, 2 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index a6e990a..81ce33b 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,5 @@ PM> Install-Package S7netplus ## Running the tests -Unit tests use Snap7 server, so port 102 must be not in use. -If you have Siemens Step7 installed, the service s7oiehsx64 is stopped when running unit tests. -You have to restart the service manually if you need it. +Unit tests use Snap7 server. +On Windows, the DLL is included with the test project. On other platforms, Snap7 must be installed manually before running tests. diff --git a/S7.Net.UnitTest/S7.Net.UnitTest.csproj b/S7.Net.UnitTest/S7.Net.UnitTest.csproj index abbf6c5..e836b62 100644 --- a/S7.Net.UnitTest/S7.Net.UnitTest.csproj +++ b/S7.Net.UnitTest/S7.Net.UnitTest.csproj @@ -25,10 +25,6 @@ - - - - PreserveNewest diff --git a/S7.Net.UnitTest/S7NetTestsAsync.cs b/S7.Net.UnitTest/S7NetTestsAsync.cs index d317533..f90f250 100644 --- a/S7.Net.UnitTest/S7NetTestsAsync.cs +++ b/S7.Net.UnitTest/S7NetTestsAsync.cs @@ -1,17 +1,11 @@ #region Using using System; using System.Collections.Generic; -using System.Linq; using Microsoft.VisualStudio.TestTools.UnitTesting; -using S7.Net; using S7.Net.UnitTest.Helpers; -using S7.Net.UnitTest; using S7.Net.Types; using S7.UnitTest.Helpers; using System.Threading.Tasks; -#if NETFRAMEWORK -using System.ServiceProcess; -#endif using System.Threading; #endregion diff --git a/S7.Net.UnitTest/S7NetTestsSync.cs b/S7.Net.UnitTest/S7NetTestsSync.cs index 8d713a5..0ad4efa 100644 --- a/S7.Net.UnitTest/S7NetTestsSync.cs +++ b/S7.Net.UnitTest/S7NetTestsSync.cs @@ -1,16 +1,10 @@ #region Using using System; using System.Collections.Generic; -using System.Linq; using Microsoft.VisualStudio.TestTools.UnitTesting; -using S7.Net; using S7.Net.UnitTest.Helpers; -using S7.Net.UnitTest; using S7.Net.Types; using S7.UnitTest.Helpers; -#if NETFRAMEWORK -using System.ServiceProcess; -#endif #endregion @@ -57,8 +51,6 @@ namespace S7.Net.UnitTest public S7NetTests() { plc = CreatePlc(); - //ConsoleManager.Show(); - ShutDownServiceS7oiehsx64(); } @@ -1034,20 +1026,6 @@ namespace S7.Net.UnitTest #endregion #region Private methods - private static void ShutDownServiceS7oiehsx64() - { -#if NETFRAMEWORK - ServiceController[] services = ServiceController.GetServices(); - var service = services.FirstOrDefault(s => s.ServiceName == "s7oiehsx64"); - if (service != null) - { - if (service.Status == ServiceControllerStatus.Running) - { - service.Stop(); - } - } -#endif - } #region IDisposable Support private bool disposedValue = false; // To detect redundant calls From 8f3c701a2f91f0c8c36225c6263bea0ec99e85a3 Mon Sep 17 00:00:00 2001 From: Serge Camille Date: Sun, 13 Sep 2020 10:28:06 +0200 Subject: [PATCH 5/7] Revert UnitTest IP address to 127.0.0.1. Seems there are sometimes performance regressions when using localhost. Might be related to IPv6, who know. Fix some TestContext not being public. --- S7.Net.UnitTest/ProtocolTests.cs | 2 +- S7.Net.UnitTest/S7NetTestsSync.cs | 3 ++- S7.Net.UnitTest/StreamTests.cs | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/S7.Net.UnitTest/ProtocolTests.cs b/S7.Net.UnitTest/ProtocolTests.cs index 4d53f17..b18ebe8 100644 --- a/S7.Net.UnitTest/ProtocolTests.cs +++ b/S7.Net.UnitTest/ProtocolTests.cs @@ -13,7 +13,7 @@ namespace S7.Net.UnitTest [TestClass] public class ProtocolUnitTest { - private TestContext TestContext { get; set; } + public TestContext TestContext { get; set; } [TestMethod] public async Task TPKT_Read() diff --git a/S7.Net.UnitTest/S7NetTestsSync.cs b/S7.Net.UnitTest/S7NetTestsSync.cs index 0ad4efa..162c5a2 100644 --- a/S7.Net.UnitTest/S7NetTestsSync.cs +++ b/S7.Net.UnitTest/S7NetTestsSync.cs @@ -38,6 +38,7 @@ namespace S7.Net.UnitTest const int DB2 = 2; const int DB4 = 4; const short TestServerPort = 31122; + const string TestServerIp = "127.0.0.1"; #endregion #region Private fields @@ -56,7 +57,7 @@ namespace S7.Net.UnitTest private static Plc CreatePlc() { - return new Plc(CpuType.S7300, "localhost", TestServerPort, 0, 2); + return new Plc(CpuType.S7300, TestServerIp, TestServerPort, 0, 2); } [TestInitialize] diff --git a/S7.Net.UnitTest/StreamTests.cs b/S7.Net.UnitTest/StreamTests.cs index 375c02c..9cb0969 100644 --- a/S7.Net.UnitTest/StreamTests.cs +++ b/S7.Net.UnitTest/StreamTests.cs @@ -65,7 +65,7 @@ namespace S7.Net.UnitTest [TestClass] public class StreamTests { - private TestContext TestContext { get; set; } + public TestContext TestContext { get; set; } [TestMethod] public async Task TPKT_ReadRestrictedStreamAsync() From 1069641606910eae9865121f147841eac7242924 Mon Sep 17 00:00:00 2001 From: Serge Camille Date: Sat, 12 Sep 2020 20:10:48 +0200 Subject: [PATCH 6/7] Add more extensive response code validation. Fixes #310 --- S7.Net.UnitTest/ProtocolTests.cs | 28 +++++++++++++++++++++++++++ S7.Net/PLC.cs | 28 ++++++++++++++++++++++++--- S7.Net/PlcAsynchronous.cs | 13 +++---------- S7.Net/PlcSynchronous.cs | 14 ++++---------- S7.Net/Protocol/ReadWriteErrorCode.cs | 15 ++++++++++++++ S7.Net/Protocol/S7WriteMultiple.cs | 13 +++++++++---- 6 files changed, 84 insertions(+), 27 deletions(-) create mode 100644 S7.Net/Protocol/ReadWriteErrorCode.cs diff --git a/S7.Net.UnitTest/ProtocolTests.cs b/S7.Net.UnitTest/ProtocolTests.cs index b18ebe8..2051edb 100644 --- a/S7.Net.UnitTest/ProtocolTests.cs +++ b/S7.Net.UnitTest/ProtocolTests.cs @@ -7,6 +7,8 @@ using S7.Net; using System.IO; using System.Threading.Tasks; +using S7.Net.Protocol; +using System.Collections; namespace S7.Net.UnitTest { @@ -64,6 +66,32 @@ namespace S7.Net.UnitTest .Select(x => Convert.ToByte(hex.Substring(x, 2), 16)) .ToArray(); } + + + [TestMethod] + public void TestResponseCode() + { + var expected = StringToByteArray("320700000400000800080001120411440100ff09000400000000"); + var m = new MemoryStream(StringToByteArray("0300000702f0000300000702f0000300002102f080320700000400000800080001120411440100ff09000400000000")); + var t = COTP.TSDU.Read(m); + Assert.IsTrue(expected.SequenceEqual(t)); + + + // Test all possible byte values. Everything except 0xff should throw an exception. + var testData = Enumerable.Range(0, 256).Select(i => new { StatusCode = (ReadWriteErrorCode)i, ThrowsException = i != (byte)ReadWriteErrorCode.Success }); + + foreach (var entry in testData) + { + if (entry.ThrowsException) + { + Assert.ThrowsException(() => Plc.ValidateResponseCode(entry.StatusCode)); + } + else + { + Plc.ValidateResponseCode(entry.StatusCode); + } + } + } } } diff --git a/S7.Net/PLC.cs b/S7.Net/PLC.cs index 96f2474..972c615 100644 --- a/S7.Net/PLC.cs +++ b/S7.Net/PLC.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.Linq; using System.Net.Sockets; +using S7.Net.Protocol; using S7.Net.Types; @@ -234,13 +235,34 @@ namespace S7.Net if (s7Data.Length < 15) throw NotEnoughBytes(); - if (s7Data[14] != 0xff) - throw new PlcException(ErrorCode.ReadData, - $"Invalid response from PLC: '{BitConverter.ToString(s7Data)}'."); + ValidateResponseCode((ReadWriteErrorCode)s7Data[14]); if (s7Data.Length < expectedLength) throw NotEnoughBytes(); } + internal static void ValidateResponseCode(ReadWriteErrorCode statusCode) + { + switch (statusCode) + { + case ReadWriteErrorCode.ObjectDoesNotExist: + throw new Exception($"Received error from PLC: Object does not exist."); + case ReadWriteErrorCode.DataTypeInconsistent: + throw new Exception($"Received error from PLC: Data type inconsistent."); + case ReadWriteErrorCode.DataTypeNotSupported: + throw new Exception($"Received error from PLC: Data type not supported."); + case ReadWriteErrorCode.AccessingObjectNotAllowed: + throw new Exception($"Received error from PLC: Accessing object not allowed."); + case ReadWriteErrorCode.AddressOutOfRange: + throw new Exception($"Received error from PLC: Address out of range."); + case ReadWriteErrorCode.HardwareFault: + throw new Exception($"Received error from PLC: Hardware fault."); + case ReadWriteErrorCode.Success: + break; + default: + throw new Exception( $"Invalid response from PLC: statusCode={(byte)statusCode}."); + } + } + #region IDisposable Support private bool disposedValue = false; // To detect redundant calls diff --git a/S7.Net/PlcAsynchronous.cs b/S7.Net/PlcAsynchronous.cs index 1de0ac8..fba1f9f 100644 --- a/S7.Net/PlcAsynchronous.cs +++ b/S7.Net/PlcAsynchronous.cs @@ -259,8 +259,7 @@ namespace S7.Net await stream.WriteAsync(dataToSend, 0, dataToSend.Length); var s7data = await COTP.TSDU.ReadAsync(stream, cancellationToken); //TODO use Async - if (s7data == null || s7data[14] != 0xff) - throw new PlcException(ErrorCode.WrongNumberReceivedBytes); + ValidateResponseCode((ReadWriteErrorCode)s7data[14]); ParseDataIntoDataItems(s7data, dataItems); } @@ -483,10 +482,7 @@ namespace S7.Net await stream.WriteAsync(dataToSend, 0, dataToSend.Length, cancellationToken); var s7data = await COTP.TSDU.ReadAsync(stream, cancellationToken); - if (s7data == null || s7data[14] != 0xff) - { - throw new PlcException(ErrorCode.WrongNumberReceivedBytes); - } + ValidateResponseCode((ReadWriteErrorCode)s7data[14]); } catch (OperationCanceledException) { @@ -509,10 +505,7 @@ namespace S7.Net await stream.WriteAsync(dataToSend, 0, dataToSend.Length); var s7data = await COTP.TSDU.ReadAsync(stream, cancellationToken); - if (s7data == null || s7data[14] != 0xff) - { - throw new PlcException(ErrorCode.WrongNumberReceivedBytes); - } + ValidateResponseCode((ReadWriteErrorCode)s7data[14]); } catch (OperationCanceledException) { diff --git a/S7.Net/PlcSynchronous.cs b/S7.Net/PlcSynchronous.cs index 8cf5f89..ddd165c 100644 --- a/S7.Net/PlcSynchronous.cs +++ b/S7.Net/PlcSynchronous.cs @@ -398,10 +398,7 @@ namespace S7.Net stream.Write(dataToSend, 0, dataToSend.Length); var s7data = COTP.TSDU.Read(stream); - if (s7data == null || s7data[14] != 0xff) - { - throw new PlcException(ErrorCode.WrongNumberReceivedBytes); - } + ValidateResponseCode((ReadWriteErrorCode)s7data[14]); } catch (Exception exc) { @@ -483,10 +480,7 @@ namespace S7.Net stream.Write(dataToSend, 0, dataToSend.Length); var s7data = COTP.TSDU.Read(stream); - if (s7data == null || s7data[14] != 0xff) - { - throw new PlcException(ErrorCode.WrongNumberReceivedBytes); - } + ValidateResponseCode((ReadWriteErrorCode)s7data[14]); } catch (Exception exc) { @@ -524,8 +518,8 @@ namespace S7.Net stream.Write(dataToSend, 0, dataToSend.Length); var s7data = COTP.TSDU.Read(stream); //TODO use Async - if (s7data == null || s7data[14] != 0xff) - throw new PlcException(ErrorCode.WrongNumberReceivedBytes); + + ValidateResponseCode((ReadWriteErrorCode)s7data[14]); ParseDataIntoDataItems(s7data, dataItems); } diff --git a/S7.Net/Protocol/ReadWriteErrorCode.cs b/S7.Net/Protocol/ReadWriteErrorCode.cs new file mode 100644 index 0000000..9d6b943 --- /dev/null +++ b/S7.Net/Protocol/ReadWriteErrorCode.cs @@ -0,0 +1,15 @@ + +namespace S7.Net.Protocol +{ + internal enum ReadWriteErrorCode : byte + { + Reserved = 0x00, + HardwareFault = 0x01, + AccessingObjectNotAllowed = 0x03, + AddressOutOfRange = 0x05, + DataTypeNotSupported = 0x06, + DataTypeInconsistent = 0x07, + ObjectDoesNotExist = 0x0a, + Success = 0xff + } +} diff --git a/S7.Net/Protocol/S7WriteMultiple.cs b/S7.Net/Protocol/S7WriteMultiple.cs index 853e1e5..9f0257f 100644 --- a/S7.Net/Protocol/S7WriteMultiple.cs +++ b/S7.Net/Protocol/S7WriteMultiple.cs @@ -94,11 +94,16 @@ namespace S7.Net.Protocol for (int i = 0; i < dataItems.Length; i++) { - var result = itemResults[i]; - if (result == 0xff) continue; + try + { + Plc.ValidateResponseCode((ReadWriteErrorCode)itemResults[i]); + } + catch(Exception e) + { + if (errors == null) errors = new List(); + errors.Add(new Exception($"Write of dataItem {dataItems[i]} failed: {e.Message}.")); + } - if (errors == null) errors = new List(); - errors.Add(new Exception($"Write of dataItem {dataItems[i]} failed with error code {result}.")); } if (errors != null) From b95b71e9aaef970b56087423ba5a64e631b849b0 Mon Sep 17 00:00:00 2001 From: Serge Camille Date: Wed, 16 Sep 2020 20:26:53 +0200 Subject: [PATCH 7/7] Remove unnecessary string interpolation in ValidateResponseCode --- S7.Net/PLC.cs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/S7.Net/PLC.cs b/S7.Net/PLC.cs index 972c615..d95973d 100644 --- a/S7.Net/PLC.cs +++ b/S7.Net/PLC.cs @@ -245,17 +245,17 @@ namespace S7.Net switch (statusCode) { case ReadWriteErrorCode.ObjectDoesNotExist: - throw new Exception($"Received error from PLC: Object does not exist."); + throw new Exception("Received error from PLC: Object does not exist."); case ReadWriteErrorCode.DataTypeInconsistent: - throw new Exception($"Received error from PLC: Data type inconsistent."); + throw new Exception("Received error from PLC: Data type inconsistent."); case ReadWriteErrorCode.DataTypeNotSupported: - throw new Exception($"Received error from PLC: Data type not supported."); + throw new Exception("Received error from PLC: Data type not supported."); case ReadWriteErrorCode.AccessingObjectNotAllowed: - throw new Exception($"Received error from PLC: Accessing object not allowed."); + throw new Exception("Received error from PLC: Accessing object not allowed."); case ReadWriteErrorCode.AddressOutOfRange: - throw new Exception($"Received error from PLC: Address out of range."); + throw new Exception("Received error from PLC: Address out of range."); case ReadWriteErrorCode.HardwareFault: - throw new Exception($"Received error from PLC: Hardware fault."); + throw new Exception("Received error from PLC: Hardware fault."); case ReadWriteErrorCode.Success: break; default: