projects
/
u
/
mdw
/
putty
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
De-duplicate code in KEXINIT generation.
[u/mdw/putty]
/
windows
/
wingss.c
diff --git
a/windows/wingss.c
b/windows/wingss.c
index
9084c3c
..
237b389
100644
(file)
--- a/
windows/wingss.c
+++ b/
windows/wingss.c
@@
-18,10
+18,10
@@
const char *const gsslibnames[3] = {
"Microsoft SSPI SECUR32.DLL",
"User-specified GSSAPI DLL",
};
"Microsoft SSPI SECUR32.DLL",
"User-specified GSSAPI DLL",
};
-const struct keyval gsslibkeywords[] = {
- { "gssapi32", 0 },
- { "sspi", 1 },
- { "custom", 2 },
+const struct keyval
where
gsslibkeywords[] = {
+ { "gssapi32", 0
, -1, -1
},
+ { "sspi", 1
, -1, -1
},
+ { "custom", 2
, -1, -1
},
};
DECL_WINDOWS_FUNCTION(static, SECURITY_STATUS,
};
DECL_WINDOWS_FUNCTION(static, SECURITY_STATUS,
@@
-65,11
+65,12
@@
const char *gsslogmsg = NULL;
static void ssh_sspi_bind_fns(struct ssh_gss_library *lib);
static void ssh_sspi_bind_fns(struct ssh_gss_library *lib);
-struct ssh_gss_liblist *ssh_gss_setup(
const Config *cfg
)
+struct ssh_gss_liblist *ssh_gss_setup(
Conf *conf
)
{
HMODULE module;
HKEY regkey;
struct ssh_gss_liblist *list = snew(struct ssh_gss_liblist);
{
HMODULE module;
HKEY regkey;
struct ssh_gss_liblist *list = snew(struct ssh_gss_liblist);
+ char *path;
list->libraries = snewn(3, struct ssh_gss_library);
list->nlibraries = 0;
list->libraries = snewn(3, struct ssh_gss_library);
list->nlibraries = 0;
@@
-148,8
+149,9
@@
struct ssh_gss_liblist *ssh_gss_setup(const Config *cfg)
* Custom GSSAPI DLL.
*/
module = NULL;
* Custom GSSAPI DLL.
*/
module = NULL;
- if (cfg->ssh_gss_custom.path[0]) {
- module = LoadLibrary(cfg->ssh_gss_custom.path);
+ path = conf_get_filename(conf, CONF_ssh_gss_custom)->path;
+ if (*path) {
+ module = LoadLibrary(path);
}
if (module) {
struct ssh_gss_library *lib =
}
if (module) {
struct ssh_gss_library *lib =
@@
-157,7
+159,7
@@
struct ssh_gss_liblist *ssh_gss_setup(const Config *cfg)
lib->id = 2;
lib->gsslogmsg = dupprintf("Using GSSAPI from user-specified"
lib->id = 2;
lib->gsslogmsg = dupprintf("Using GSSAPI from user-specified"
- " library '%s'",
cfg->ssh_gss_custom.
path);
+ " library '%s'", path);
lib->handle = (void *)module;
#define BIND_GSS_FN(name) \
lib->handle = (void *)module;
#define BIND_GSS_FN(name) \