Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
b235d795
Commit
b235d795
authored
Jan 05, 2006
by
Jacek Caban
Committed by
Alexandre Julliard
Jan 05, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
urlmon: Added implementation of QueryService and stub implementation
of IHttpNegotiate2 interface.
parent
6744b9b4
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
87 additions
and
1 deletion
+87
-1
binding.c
dlls/urlmon/binding.c
+87
-1
No files found.
dlls/urlmon/binding.c
View file @
b235d795
...
@@ -58,6 +58,77 @@ typedef struct {
...
@@ -58,6 +58,77 @@ typedef struct {
#define BINDINF(x) ((IInternetBindInfo*) &(x)->lpInternetBindInfoVtbl)
#define BINDINF(x) ((IInternetBindInfo*) &(x)->lpInternetBindInfoVtbl)
#define SERVPROV(x) ((IServiceProvider*) &(x)->lpServiceProviderVtbl)
#define SERVPROV(x) ((IServiceProvider*) &(x)->lpServiceProviderVtbl)
static
HRESULT
WINAPI
HttpNegotiate_QueryInterface
(
IHttpNegotiate2
*
iface
,
REFIID
riid
,
void
**
ppv
)
{
*
ppv
=
NULL
;
if
(
IsEqualGUID
(
&
IID_IUnknown
,
riid
))
{
TRACE
(
"(IID_IUnknown %p)
\n
"
,
ppv
);
*
ppv
=
iface
;
}
else
if
(
IsEqualGUID
(
&
IID_IHttpNegotiate
,
riid
))
{
TRACE
(
"(IID_IHttpNegotiate %p)
\n
"
,
ppv
);
*
ppv
=
iface
;
}
else
if
(
IsEqualGUID
(
&
IID_IHttpNegotiate2
,
riid
))
{
TRACE
(
"(IID_IHttpNegotiate2 %p)
\n
"
,
ppv
);
*
ppv
=
iface
;
}
if
(
*
ppv
)
{
IHttpNegotiate2_AddRef
(
iface
);
return
S_OK
;
}
WARN
(
"Unsupported interface %s
\n
"
,
debugstr_guid
(
riid
));
return
E_NOINTERFACE
;
}
static
ULONG
WINAPI
HttpNegotiate_AddRef
(
IHttpNegotiate2
*
iface
)
{
URLMON_LockModule
();
return
2
;
}
static
ULONG
WINAPI
HttpNegotiate_Release
(
IHttpNegotiate2
*
iface
)
{
URLMON_UnlockModule
();
return
1
;
}
static
HRESULT
WINAPI
HttpNegotiate_BeginningTransaction
(
IHttpNegotiate2
*
iface
,
LPCWSTR
szURL
,
LPCWSTR
szHeaders
,
DWORD
dwReserved
,
LPWSTR
*
pszAdditionalHeaders
)
{
FIXME
(
"(%s %s %ld %p)
\n
"
,
debugstr_w
(
szURL
),
debugstr_w
(
szHeaders
),
dwReserved
,
pszAdditionalHeaders
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
HttpNegotiate_OnResponse
(
IHttpNegotiate2
*
iface
,
DWORD
dwResponseCode
,
LPCWSTR
szResponseHeaders
,
LPCWSTR
szRequestHeaders
,
LPWSTR
*
pszAdditionalRequestHeaders
)
{
FIXME
(
"(%ld %s %s %p)
\n
"
,
dwResponseCode
,
debugstr_w
(
szResponseHeaders
),
debugstr_w
(
szRequestHeaders
),
pszAdditionalRequestHeaders
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
HttpNegotiate_GetRootSecurityId
(
IHttpNegotiate2
*
iface
,
BYTE
*
pbSecurityId
,
DWORD
*
pcbSecurityId
,
DWORD_PTR
dwReserved
)
{
FIXME
(
"(%p %p %ld)
\n
"
,
pbSecurityId
,
pcbSecurityId
,
dwReserved
);
return
E_NOTIMPL
;
}
static
const
IHttpNegotiate2Vtbl
HttpNegotiate2Vtbl
=
{
HttpNegotiate_QueryInterface
,
HttpNegotiate_AddRef
,
HttpNegotiate_Release
,
HttpNegotiate_BeginningTransaction
,
HttpNegotiate_OnResponse
,
HttpNegotiate_GetRootSecurityId
};
static
IHttpNegotiate2
HttpNegotiate
=
{
&
HttpNegotiate2Vtbl
};
#define BINDING_THIS(iface) DEFINE_THIS(Binding, Binding, iface)
#define BINDING_THIS(iface) DEFINE_THIS(Binding, Binding, iface)
...
@@ -425,7 +496,22 @@ static HRESULT WINAPI ServiceProvider_QueryService(IServiceProvider *iface,
...
@@ -425,7 +496,22 @@ static HRESULT WINAPI ServiceProvider_QueryService(IServiceProvider *iface,
REFGUID
guidService
,
REFIID
riid
,
void
**
ppv
)
REFGUID
guidService
,
REFIID
riid
,
void
**
ppv
)
{
{
Binding
*
This
=
SERVPROV_THIS
(
iface
);
Binding
*
This
=
SERVPROV_THIS
(
iface
);
FIXME
(
"(%p)->(%s %s %p)
\n
"
,
This
,
debugstr_guid
(
guidService
),
debugstr_guid
(
riid
),
ppv
);
HRESULT
hres
;
TRACE
(
"(%p)->(%s %s %p)
\n
"
,
This
,
debugstr_guid
(
guidService
),
debugstr_guid
(
riid
),
ppv
);
if
(
This
->
service_provider
)
{
hres
=
IServiceProvider_QueryService
(
This
->
service_provider
,
guidService
,
riid
,
ppv
);
if
(
SUCCEEDED
(
hres
))
return
hres
;
}
if
(
IsEqualGUID
(
&
IID_IHttpNegotiate
,
guidService
)
||
IsEqualGUID
(
&
IID_IHttpNegotiate2
,
guidService
))
return
IHttpNegotiate2_QueryInterface
(
&
HttpNegotiate
,
riid
,
ppv
);
WARN
(
"unknown service %s
\n
"
,
debugstr_guid
(
guidService
));
return
E_NOTIMPL
;
return
E_NOTIMPL
;
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment