[samba] DCOM or not DCOM
Alexander Bokovoy
ab на altlinux.org
Ср Сен 22 13:52:01 MSD 2004
On Wed, Sep 22, 2004 at 03:20:34PM +0600, BSW wrote:
> Alexander Bokovoy wrote:
> >Записываем сетевой трафик и анализируем в ethereal.
> Да, мысль такая была с самого начала, но отпуск... это святое.
> Итак, начнем, и начнем сразу с того места, где, по видимому, происходит
> облом (показаны только некоторые поля):
> Клиент:
> протокол: DCE RPC
> version: 5
> packet type: Bind
> interface UUID: 00020400-0000-0000-C000-000000000046
> Сервер:
> протокол: DCE RPC
> version: 5
> packet type: Bind_ack
> Клиент:
> протокол: DCE RPC
> version: 5
> packet type: AUTH3
>
> протокол: DCE RPC
> version: 5
> packet type: Request
> opnum: 5
> UNKUUID: 00020400-0000-0000-C000-000000000046
> Сервер:
> протокол: DCE RPC
> version: 5
> packet type: Fault
> opnum: 5
> status: Unknown(0x00000005)
В Samba 4 этот opnum в интерфейсе 00020400-0000-0000-C000-000000000046
соответствует функции GetIDsOfNames (source/librpc/idl/dcom.idl):
[
object,
uuid(00020400-0000-0000-C000-000000000046),
version(0.0)
] interface IDispatch : IUnknown
{
/*****************/
/* Function 0x03 */
HRESULT GetTypeInfoCount(
[out] uint16 *pctinfo);
typedef struct {
uint8 FIXME;
} ITypeInfo;
typedef struct {
ITypeInfo *pTInfo;
} REF_ITypeInfo;
/*****************/
/* Function 0x04 */
HRESULT GetTypeInfo (
[in] uint16 iTInfo,
[in] LCID lcid,
[out] REF_ITypeInfo *ppTInfo);
/*****************/
/* Function 0x05 */
HRESULT GetIDsOfNames(
[in] IID *riid,
/*FIXME[in,size_is(cNames)] OLESTR *rgszNames[], */
[in] uint16 cNames,
[in] LCID lcid,
[out,size_is(cNames)] DISPID *rgDispId);
typedef struct {
uint16 vartype;
uint16 FIXME;
} VARIANT;
typedef struct {
uint16 FIXME;
} DISPPARAMS;
/* Exception ? */
typedef struct {
uint16 FIXME;
} EXCEPINFO;
/*****************/
/* Function 0x06 */
HRESULT Invoke(
[in] DISPID dispIdMember,
[in] IID *riid,
[in] LCID lcid,
[in] uint16 wFlags,
[out,in] DISPPARAMS *pDispParams,
[out] VARIANT *pVarResult,
[out] EXCEPINFO *pExcepInfo,
[out] uint16 *puArgErr);
}
В 3.0 этот интерфейс еще не поддерживается.
--
/ Alexander Bokovoy
Samba Team http://www.samba.org/
ALT Linux Team http://www.altlinux.org/
Midgard Project Ry http://www.midgard-project.org/
Подробная информация о списке рассылки Samba