270 Commits

Author SHA1 Message Date
manojampalam
1369e3054f Fix on_select logic for sockets 2016-03-08 22:54:35 -08:00
manojampalam
ae2873e8f1 select() fixes around timeout expiry return value 2016-03-07 22:46:21 -08:00
manojampalam
682fac1587 3-7 20:00 2016-03-07 20:08:45 -08:00
Manoj Ampalam
81efa6a3b7 Added dup() support 2016-03-07 15:13:32 -08:00
Manoj Ampalam
2305a16980 3-7 C3
advancing file pointer in read completion routine
2016-03-07 14:25:38 -08:00
Manoj Ampalam
991be1f492 3-7 C2
Fix select routine to return EAGAIN when timeout is 0 and no fds are
ready
2016-03-07 13:02:31 -08:00
Manoj Ampalam
73cab1c657 3-7 C1
Fixes in select routine to respect incoming fd_set size
2016-03-07 11:05:46 -08:00
manojampalam
d871c325aa 3-6 C13 2016-03-06 22:48:26 -08:00
manojampalam
e4c233e95c 3-6 C12
Changes enabling ssh.exe on the new posix wrapper
2016-03-06 21:43:59 -08:00
manojampalam
2a87a620ce 3-6 C11
stat() implementation support
2016-03-06 21:39:33 -08:00
manojampalam
277435f8f2 3-6 C8 2016-03-06 19:18:33 -08:00
manojampalam
ed0888d6c2 3-6 C7 2016-03-06 15:47:33 -08:00
manojampalam
b6f7898659 3-6 C6 2016-03-06 14:14:29 -08:00
manojampalam
d6f5485283 3-6 C5 2016-03-06 13:26:09 -08:00
manojampalam
dd1402f68a 3-6 C4
Removing winsock2 reference from unwanted headers in win32compat
2016-03-06 12:47:21 -08:00
manojampalam
0ec4dbaae2 3-6 C3
Removing winsock2 header from ssh-lsa source
2016-03-06 12:17:48 -08:00
manojampalam
fc9a325988 3-6 C1
Moving conflicting defs to internal header
2016-03-06 11:35:05 -08:00
manojampalam
0b3db0aa3e 3-5 c7 2016-03-05 20:11:05 -08:00
manojampalam
b6545a7e39 3-5 c6 2016-03-05 19:52:34 -08:00
manojampalam
44c5be4883 3-5 C4 2016-03-05 15:11:04 -08:00
manojampalam
a072913927 Moving Win32 posix wrapper from standalone project to win32compat project 2016-03-05 15:04:03 -08:00
quamrulmina
802d9a3349 Fix #71; Env vars like APPDATA, LOCALAPPDATA etc in sshd are set correctly now.
APPDATA, LOCALAPPDATA, HOMEDRIVE, HOMEPATH set correctly in sshd server
2016-01-27 18:20:11 -06:00
dkulwin
44d8ddddb1 Implement generic interface for bignum and diffie-hellman
Implementation of a generic wrap interface for bignum and diffie-hellman
based upon Damien's wrap code in openssh-openbsd.  This commit adds the
generic interface along with the backing code for openssl, cng, and cng
with an openssl fallback.  Currently, openssl is the only provider for
bignum and the diffie-hellman generic interface is only for static and
negotiated oakley groups..
2016-01-16 16:10:16 -06:00
quamrulmina
fe136bc352 Code fixed for ssh-agent.exe and ssh-add.exe to work in Windows
ssh-agent.exe and ssh-add.exe code updated and fixed to work in Windows.
For convenience of users, ssh-agent.exe starts a cmd shell with the
"SSH_AUTH_SOCK" and "SSH_AGENT_PID" environment variables set.
ssh-add.exe can be run immediately from the cmd shell. 'ssh-add -L" and
"ssh-add id_rsa"  and "ssh-add -d id_rsa" are 3 useful commands to list,
add and delete keys from ssh-agent cache.
2016-01-16 00:05:33 -06:00
dkulwin
02e784565a Add CNG KEX support routine
CNG KEX support for Group1, Group14 and Group Exchange .
2016-01-08 13:40:55 -06:00
dkulwin
702daceea7 Minor changes to assertion handling
Changed the code to bring back assertion popups for everyone, but turn
off assertions around the _get_osfhandle() call in allocate_sfd().  The
original port code was designed knowing that some of the passed
parameters would be invalid, but was expecting that the call would just
fail instead of generating an assert dialog.  Turning off Asserts around
this call results in behavior similar to mingw.

Also, turn off Incremental Linking for ssh.exe since half the time, the
linker would trap on this project.
2015-12-08 12:47:35 -06:00
quamrulmina
68677bb603 scp client and server ported to work in Windows
Lot of code had to be redone as scp.exe contains both the scp client and
scp server in the same binary working in Windows needs various file
system access related changes. sshd_config file needs to add "scp"
subsystem path like we do for sftp server.
2015-12-07 00:31:07 -06:00
quamrulmina
66426d7369 Fix #21 -- ssh client cannot issue commands to Tectia sshd server
Will work with Tectia server 6.3.6 and all Tectia ssh servers. Tested
with latest Tectia ssh server 6.4.12
2015-11-20 18:13:32 -06:00
dkulwin
138ce33669 fix exception caused by *dword used in *size_t call parameter
The code was writing a size_t size of data to a dword.
2015-11-16 17:53:16 -06:00
dkulwin
937f2e02cc ssh-lsa project changes
Using a module definition file gives better support to handle symbol
decorations.  This change adds ssh-lsa.def to define the functions
exported from ssh-lsa.dll.

Misc. changes to ssh-lsa project (warning level, sdl check, calling
convention).
2015-11-13 22:01:06 -06:00
dkulwin
b45867b93c LSA visual studio work
Add exports via pragma statements and reduce included libraires
2015-11-13 11:58:51 -06:00
dkulwin
dd2bf90066 Support for Visual studio
The changes necessary to support visual studio fall into 2 basic groups.
1) reordering of header files, and 2) changes to support syntax
differences between mingw and visual studio and 3).  All changes are
conditional upon the definition of the macro __VS_BUILD__ .
2015-11-11 15:03:03 -06:00
Manoj Ampalam
d7986de876 Enabling CNG back after merging L1 to master. 2015-11-09 00:04:37 -08:00
Manoj Ampalam
7f97b8188a Disable CNG for MingW builid 2015-11-08 23:49:18 -08:00
dkulwin
3a660dc4c7 Tweak kerberos function specs to match prototypes 2015-11-06 12:03:51 -06:00
dkulwin
65fb8f4c38 Fix kerberos prototypes for Visual studio
Visual studio wants call convention specification within the parenthesis
when declaring function variables.
2015-11-05 15:39:18 -06:00
dkulwin
2367dca1e9 Disable invalid parameter handler use under mingw
Mingw doesn't support the invalid parameter handler function in the same
way as visual studio.  Shouldn't be needed under mingw anyway.
2015-11-05 15:01:12 -06:00
manojampalam
9fa44f0777 Merge pull request #22 from noshbar/L1
Fix potential memory leak in win32/console.c
2015-11-05 12:26:22 -08:00
dkulwin
44510dc67e Back out kerberos prototype changes
Looks like the changes work for visual studio, but broke mingw.
2015-11-05 14:03:33 -06:00
dkulwin
3bbefb6078 Add #ifdefs around #defines
In order to avoid redefinition warnings, check before we define.
2015-11-04 19:34:19 -06:00
dkulwin
5fd03ec459 Add some missing headers and defines to support visual studio
Visual studio compatibility changes.
2015-11-04 19:34:18 -06:00
dkulwin
11561cd62a add an invalid parameter handler to catch _get_osfhandle failures under visual studio
The sfds code blindly uses _get_osfhandle on values that may be file
descriptors, sockets or io handles.  Under visual studio, _get_osfhandle
will call the invalid parameter handler for items that are not file
descriptors.  Adding the handler allows us to call this in the same way
that mingw does.  We will still get an assertion, but a prior change
sends those to stdiout instead of making the user click through a
dialog.
2015-11-04 19:34:17 -06:00
dkulwin
2454a18404 whitespace after \ causes visual studio to not parse as a line continuation
Make the file work better in visual studio
2015-11-04 19:34:16 -06:00
dkulwin
39706fca9c Add code to stop asserts from tossing up dialogs
Assert dialogs can be a problem when running as a service.  This change
instructs assert info to be sent to stdout instead of a dialog.
2015-11-04 19:34:15 -06:00
dkulwin
25e52cb498 Add prototypes for functions returning pointers and modify how some arrays are defined
Functions not declared before use, are define as returning an int.
Under 64-bit this can result in corrupted pointers being returned.

Also, Visual studio doesn't like it when you use variables to declare
array sizes, static values always work though.
2015-11-04 19:34:15 -06:00
dkulwin
ddace27b97 VC2015 doesn't like it when you take a negative of on unsigned value
Negative of an unsigned value should just be the two's complement.  Add
code to change code with negative unsigned values to two's compliment
values if compiling under visual studio.
2015-11-04 19:34:12 -06:00
dkulwin
3ab9c8f055 fix bug in cng cipher keyobject processing
KeyObject for cipher symmetric key was being allocated improperly due to
an error in getting the key object size.  Also added code to free
keyobject in the event of a key creation failure.
2015-10-31 12:06:18 -05:00
dkulwin
bc6871e862 Add CNG manual memory management code to support Vista
Windows 7 improved the memory management in CNG.  To support Vista we
need to manage memory for cryptographic objects ourselves.  This change
adds a key object memory pointer to the cipher context and adds code to
allocate and free it along with the key handle.
2015-10-29 15:46:37 -05:00
dkulwin
728c299d67 Fix CNG hash GetProperty bug
ssh_digest_start was using a pointer to the algorithm handle instead of
the algorithm handle itself in the BCryptGetProperty call.  It was also
querying for the hash length when it should have been querying for the
hash object length.
2015-10-29 15:07:09 -05:00
dkulwin
c4fb7d76ee Manually manage bcrypt hash memory in order to support Vista
The CNG routines added improved memory management in windows 7.  In
order to support Vista, we need to manually manage the scratch memory
used by cng.
2015-10-29 13:08:22 -05:00