NSPI hook functions. More...
#include "mapiproxy/dcesrv_mapiproxy.h"#include "mapiproxy/dcesrv_mapiproxy_proto.h"#include "libmapi/mapidefs.h"#include "libmapi/property_altnames.h"Functions | |
| bool | mapiproxy_NspiDNToMId (struct dcesrv_call_state *dce_call, struct NspiDNToMId *r) |
| bool | mapiproxy_NspiGetProps (struct dcesrv_call_state *dce_call, struct NspiGetProps *r) |
| bool | mapiproxy_NspiQueryRows (struct dcesrv_call_state *dce_call, struct NspiQueryRows *r) |
| static char * | x500_get_servername (const char *dn) |
NSPI hook functions.
| bool mapiproxy_NspiDNToMId | ( | struct dcesrv_call_state * | dce_call, |
| struct NspiDNToMId * | r | ||
| ) |
This function looks if the server DN string in the request holds the mapiproxy netbios name and replaces it with the original Exchange server one fetched from NspiQueryRows or NspiGetProps.
| dce_call | pointer to the session context |
| r | pointer to the NspiDNToMId structure |
Referenced by mapiproxy_op_dispatch().
| bool mapiproxy_NspiGetProps | ( | struct dcesrv_call_state * | dce_call, |
| struct NspiGetProps * | r | ||
| ) |
This function replaces network address from the binding strings returned by Exchange for the PR_EMS_AB_NETWORK_ADDRESS property and limit the binding strings scope to ncacn_ip_tcp.
| dce_call | pointer to the session context |
| r | pointer to the NspiGetProps structure |
Referenced by mapiproxy_op_ndr_push().
| bool mapiproxy_NspiQueryRows | ( | struct dcesrv_call_state * | dce_call, |
| struct NspiQueryRows * | r | ||
| ) |
This function replaces the Exchange server name with mapiproxy netbios name for the PR_EMS_AB_HOME_MDB property and saves the original name in a global variable for further usage - such as mapiproxy_NspiDNToMId.
| dce_call | pointer to the session context |
| r | pointer to the NspiQueryRows structure |
References x500_get_servername().
Referenced by mapiproxy_op_ndr_push().
|
static |
Retrieve the servername from a DN string
| dn | the DN string |
Referenced by mapiproxy_NspiQueryRows().
|
|
This content is licensed under the Creative Commons Attribution ShareAlike License v. 3.0: http://creativecommons.org/licenses/by-sa/3.0/ |