UPnPsdk 0.1
Universal Plug and Play +, Software Development Kit
 
Loading...
Searching...
No Matches
COMPATIBLE API

Well defined Application Programming Interface of the compatible part of the library. More...

Modules

 Step 0: Addressing
 Items to get a network address for UPnP devices and control points.
 
 Step 1: Discovery
 Items for control points to find UPnP device(s) with SSDP the Simple Service Discovery Protocol.
 
 Step 2: Description
 Items for control points to learn more about a UPnP device and its capabilities.
 
 Step 3: Control
 Items for control points to invoke actions on UPnP devices with SOAP the Simple Object Access Protocol.
 
 Step 4: Eventing
 Items to manage events with GENA the General Event Notification Architecture.
 
 Step 5: Presentation
 Items for control points to expose an HTML-based user interface for controlling and/or viewing device status.
 
 General local operating
 Items for general local operating that is used for all UPnP Steps to manage internal structures.
 
 Control Point http API
 
 Web Server API
 
UPnPsdk_VIS int UpnpInitSslContext (int initOpenSslLib, const SSL_METHOD *sslMethod)
 Initializes the OpenSSL library, and the OpenSSL context.
 
UPnPsdk_VIS void freeSslCtx (void)
 Free the OpenSSL context.
 

Detailed Description

Well defined Application Programming Interface of the compatible part of the library.

This API is equal to the API of the old pUPnP System Developement Kit (SDK). It drop in replaces the API of the old pUPnP SDK. If the default usage of this Interface does not behave like the old one then it should be reported as an issue. Differences may exist with error conditions due to bug fixes and stability enhacements. This ensures that you can direct use UPnPlib instead pUPnP without changes to your source code. Then you can modify your source code step by step or only when needed, to use the new object oriented features of the completely rewritten UPnPlib.

This feature is only to ease the port to the new library but support will be discontinued after some time of transition. It is not intended to continue supporting this. With starting a new software project it is strongly recommended to only use the new object oriented UPnPlib API.

Function Documentation

◆ UpnpInitSslContext()

UPnPsdk_VIS int UpnpInitSslContext ( int  initOpenSslLib,
const SSL_METHOD *  sslMethod 
)

Initializes the OpenSSL library, and the OpenSSL context.

Note
This method is only available if the library is compiled with OpenSSL support.
Returns
An integer representing one of the following:
  • UPNP_E_SUCCESS: The operation completed successfully.
  • UPNP_E_INIT: The SDK is already initialized.
  • UPNP_E_INIT_FAILED: The SDK initialization failed. Is OpenSSL available?
Parameters
initOpenSslLibThis argument is ignored and only provided for compatibility. It can be set to any value. The library is initialzed automatically.
sslMethodThe SSL_METHOD to use to create the context. See OpenSSL docs for more info, that recommends to use TLS_method(), TLS_server_method() (for client and server), or TLS_client_method() since OpenSSL 1.1.0 because other methods are deprecated.

Definition at line 590 of file sock.cpp.

◆ freeSslCtx()

UPnPsdk_VIS void freeSslCtx ( void  )

Free the OpenSSL context.

Note
This method is only available if the library is compiled with OpenSSL support.

Definition at line 610 of file sock.cpp.

+ Here is the caller graph for this function: