MAPIProxy 2.0 API Documentation

- Main Page
- Related Pages
- Data Structures
- Files

- File List
- Globals

Functions
mpm_downgrade.c File Reference

Downgrade EMSMDB protocol version EcDoConnect/EcDoRpc. More...

`#include "mapiproxy/dcesrv_mapiproxy.h"`
`#include "mapiproxy/dcesrv_mapiproxy_proto.h"`
`#include "mapiproxy/libmapiproxy/libmapiproxy.h"`
`#include <util/debug.h>`

## Functions
static NTSTATUS | downgrade_dispatch (struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, void *r, struct mapiproxy *mapiproxy)
static bool | downgrade_EcDoConnect (struct dcesrv_call_state *dce_call, struct EcDoConnect *r)
NTSTATUS | samba_init_module (void)

## Detailed Description

Downgrade EMSMDB protocol version EcDoConnect/EcDoRpc.

## Function Documentation

static NTSTATUS downgrade_dispatch | ( | struct dcesrv_call_state * | dce_call,
|  | TALLOC_CTX * | mem_ctx,
|  | void * | r,
|  | struct mapiproxy * | mapiproxy
| ) |  |
| static

Returns the nca_op_rng_error DCERPC status code when Outlook sends an EcDoConnectEx requrest.

Parameters

  dce_call | pointer to the session context
  mem_ctx | pointer to the memory context
  r | generic pointer to EcDoConnectEx structure
  mapiproxy | pointer to the mapiproxy structure

Returns
  NT_STATUS_NET_WRITE_FAULT when EcDoConnectEx is detected, otherwise NT_STATUS_OK

Referenced by samba_init_module().

static bool downgrade_EcDoConnect | ( | struct dcesrv_call_state * | dce_call,
|  | struct EcDoConnect * | r
| ) |  |
| static

This function replaces the store_version short array returned by Exchange in EcDoConnect with a version matching Exchange 2000. Otherwise Outlook tries to upgrade indefinitely.

Parameters

  dce_call | pointer to the session context
  r | pointer to the EcDoConnect structure

Returns
  true on success

NTSTATUS samba_init_module | ( | void |  | ) |

Entry point for the downgrade mapiproxy module

Returns
  NT_STATUS_OK on success, otherwise NTSTATUS error

References downgrade_dispatch().

| This content is licensed under the Creative Commons Attribution ShareAlike License v. 3.0: http://creativecommons.org/licenses/by-sa/3.0/