Error Codes 420–439

Last updated on

420

The protected software's licence has 0 executions remaining.

The protected software will continue to return this error until a secure update code is used to update its licence. See Remote Parameter Changing in the SDK user manual.

421

The protected software's licence does not have enough executions remaining to decrement by the specified amount.

The licence's execution counter is not decremented by any amount when this error occurs.

422

The protected software's licence has passed its expiry date.

The protected software will continue to return this error until a secure update code is used to update its licence. See Remote Parameter Changing in the SDK user manual.

423

Too many network users.

The limit for the number of simultaneous network users of the protected software has been reached.

424

An attempt was made to read or write past the end of the dongle data area.

You cannot increase the size of the data area by writing past the end with DDProtCheck(). Instead, use a secure update code. See Remote Parameter Changing in the SDK user manual.

425

An attempt was made to read/write or encrypt/decrypt too much data.

For performance reasons, a maximum of 1024 bytes can be read, written or encrypted in a single call to DDProtCheck(). For larger amounts of data, split it into 1024 bytes chunks and make multiple calls to the API.

426

The specified algorithm cannot be found.

There is no algorithm stored in the dongle at the slot specified by the alg_number field in the DRIS.

427

A divide by zero or modulo zero error occurred while executing an algorithm.

The precise cause of this error depends on the algorithm and values for var_a to var_h that you specified. See Algorithms in the SDK user manual.

428

This operation is not supported.

DDGetNetUserList() is not supported by the debug API libraries. Calling DDGetNetUserList() in a debug library will return this error code. This error can also be returned by an out of date version of DinkeyServer that does not support DDGetNetUserList(). In this case, update DinkeyServer to the latest version.

429

The alt_licence_name field of the DRIS is not null-terminated.

alt_licence_name must be a null-terminated ASCII string. Refer to the sample code in the SDK to see how to set this field in your programming language.

430

An unauthorised program attempted to call DDProtCheck().

The program calling the protection API library does not match the calling program specified when the library was locked. When using the calling program feature, you must create a new locked copy of the API library whenever you make a change to the program that calls the library.

If your protected software is launched by another program, you should not use the calling program feature because you cannot guarantee that the launching program will be the same on every user's computer. For example, for .NET applications the calling program is the dotnet command, for Java programs it's the JVM, and for Python it's the Python interpreter.

431–434

These error codes are no longer in use.

If you encounter any of these errors, you are using an outdated version of Dinkey Pro and you should update to the latest version.

435

DinkeyServer cannot be found on the network.

Protected software uses UDP multicast to auto-detect DinkeyServer on the network. The most common reasons why the multicast can fail are:

  • DinkeyServer is not running.

  • A firewall on the server and/or client is blocking the multicast. See Network Dongles > Firewalls in the SDK user manual for more information. Users are often unaware that their computer has a firewall installed. Many popular anti-virus products include a bundled firewall.

  • Network topology, e.g. there is a physical or virtual router/switch between server and client that does not forward on the multicast. In this case, you can manually specify the location of DinkeyServer on the network. See Network Dongles > DinkeyServer Auto-detection in the SDK user manual for more information.

If your protected software is a Universal Windows Platform app (previously known as a Windows Store app or Metro-style app) then this error can occur if you have not added the privateNetworkClientServer capability to your app manifest.

436

Communication with DinkeyServer timed out.

The most common reasons for this error are:

  • DinkeyServer is not running.

  • A firewall on the server and/or client is blocking the communication. See Network Dongles > Firewalls in the SDK user manual for more information. Users are often unaware that their computer has a firewall installed. Many popular anti-virus products include a bundled firewall.

  • You are overriding DinkeyServer auto-detection but the settings in the configuration file are incorrect. See Network Dongles > Overriding DinkeyServer Auto-detection in the SDK user manual for more information.

  • A temporary network issue. Wait a while and then try again.

437

The protected software sent a valid request that DinkeyServer does not support.

If you encounter this error, you are using an outdated version of DinkeyServer and you should update to the latest version.

438

The protected software failed to end a network user.

Extended error code 0 means that a network user was never started, or that it has already been ended. This indicates a coding error, and you should update your code to address this.

439

The product code of the protected software is not currently being served by DinkeyServer.

If a dongle is connected to the dongle server while DinkeyServer is running, you must restart DinkeyServer for it to detect and serve the dongle.