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
3d1ba2ab
Commit
3d1ba2ab
authored
Nov 02, 2007
by
Juan Lang
Committed by
Alexandre Julliard
Nov 05, 2007
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
crypt32: Don't store a redundant copy of data in the message store.
parent
8b17846d
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
14 additions
and
34 deletions
+14
-34
store.c
dlls/crypt32/store.c
+14
-34
No files found.
dlls/crypt32/store.c
View file @
3d1ba2ab
...
...
@@ -93,13 +93,6 @@ typedef struct _WINE_MEMSTORE
struct
ContextList
*
crls
;
}
WINE_MEMSTORE
,
*
PWINE_MEMSTORE
;
typedef
struct
_WINE_MSGSTOREINFO
{
DWORD
dwOpenFlags
;
HCERTSTORE
memStore
;
HCRYPTMSG
msg
;
}
WINE_MSGSTOREINFO
,
*
PWINE_MSGSTOREINFO
;
void
CRYPT_InitStore
(
WINECRYPT_CERTSTORE
*
store
,
DWORD
dwFlags
,
CertStoreType
type
)
{
...
...
@@ -528,12 +521,10 @@ static PWINECRYPT_CERTSTORE CRYPT_SysOpenStoreA(HCRYPTPROV hCryptProv,
static
void
WINAPI
CRYPT_MsgCloseStore
(
HCERTSTORE
hCertStore
,
DWORD
dwFlags
)
{
PWINE_MSGSTOREINFO
store
=
(
PWINE_MSGSTOREINFO
)
hCertStore
;
HCRYPTMSG
msg
=
(
HCRYPTMSG
)
hCertStore
;
TRACE
(
"(%p, %08x)
\n
"
,
store
,
dwFlags
);
CertCloseStore
(
store
->
memStore
,
dwFlags
);
CryptMsgClose
(
store
->
msg
);
CryptMemFree
(
store
);
TRACE
(
"(%p, %08x)
\n
"
,
msg
,
dwFlags
);
CryptMsgClose
(
msg
);
}
static
void
*
msgProvFuncs
[]
=
{
...
...
@@ -613,28 +604,17 @@ static PWINECRYPT_CERTSTORE CRYPT_MsgOpenStore(HCRYPTPROV hCryptProv,
}
if
(
ret
)
{
PWINE_MSGSTOREINFO
info
=
CryptMemAlloc
(
sizeof
(
WINE_MSGSTOREINFO
));
if
(
info
)
{
CERT_STORE_PROV_INFO
provInfo
=
{
0
};
info
->
dwOpenFlags
=
dwFlags
;
info
->
memStore
=
memStore
;
info
->
msg
=
CryptMsgDuplicate
(
msg
);
provInfo
.
cbSize
=
sizeof
(
provInfo
);
provInfo
.
cStoreProvFunc
=
sizeof
(
msgProvFuncs
)
/
sizeof
(
msgProvFuncs
[
0
]);
provInfo
.
rgpvStoreProvFunc
=
msgProvFuncs
;
provInfo
.
hStoreProv
=
info
;
store
=
CRYPT_ProvCreateStore
(
dwFlags
,
memStore
,
&
provInfo
);
/* Msg store doesn't need crypto provider, so close it */
if
(
hCryptProv
&&
!
(
dwFlags
&
CERT_STORE_NO_CRYPT_RELEASE_FLAG
))
CryptReleaseContext
(
hCryptProv
,
0
);
}
else
CertCloseStore
(
memStore
,
0
);
CERT_STORE_PROV_INFO
provInfo
=
{
0
};
provInfo
.
cbSize
=
sizeof
(
provInfo
);
provInfo
.
cStoreProvFunc
=
sizeof
(
msgProvFuncs
)
/
sizeof
(
msgProvFuncs
[
0
]);
provInfo
.
rgpvStoreProvFunc
=
msgProvFuncs
;
provInfo
.
hStoreProv
=
CryptMsgDuplicate
(
msg
);
store
=
CRYPT_ProvCreateStore
(
dwFlags
,
memStore
,
&
provInfo
);
/* Msg store doesn't need crypto provider, so close it */
if
(
hCryptProv
&&
!
(
dwFlags
&
CERT_STORE_NO_CRYPT_RELEASE_FLAG
))
CryptReleaseContext
(
hCryptProv
,
0
);
}
else
CertCloseStore
(
memStore
,
0
);
...
...
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