1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-09 17:38:00 +00:00
putty-source/windows
Simon Tatham e0a76971cc New array-growing macros: sgrowarray and sgrowarrayn.
The idea of these is that they centralise the common idiom along the
lines of

   if (logical_array_len >= physical_array_size) {
       physical_array_size = logical_array_len * 5 / 4 + 256;
       array = sresize(array, physical_array_size, ElementType);
   }

which happens at a zillion call sites throughout this code base, with
different random choices of the geometric factor and additive
constant, sometimes forgetting them completely, and generally doing a
lot of repeated work.

The new macro sgrowarray(array,size,n) has the semantics: here are the
array pointer and its physical size for you to modify, now please
ensure that the nth element exists, so I can write into it. And
sgrowarrayn(array,size,n,m) is the same except that it ensures that
the array has size at least n+m (so sgrowarray is just the special
case where m=1).

Now that this is a single centralised implementation that will be used
everywhere, I've also gone to more effort in the implementation, with
careful overflow checks that would have been painful to put at all the
previous call sites.

This commit also switches over every use of sresize(), apart from a
few where I really didn't think it would gain anything. A consequence
of that is that a lot of array-size variables have to have their types
changed to size_t, because the macros require that (they address-take
the size to pass to the underlying function).
2019-02-28 20:15:38 +00:00
..
installer.wxs Fix platform field in Windows on Arm installers. 2018-08-21 07:17:06 +01:00
msiplatform.py Fix platform field in Windows on Arm installers. 2018-08-21 07:17:06 +01:00
pageant.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
pageant.mft Make manifest files work with 64bit builds of PuTTY. 2015-08-15 13:54:44 +01:00
pageant.rc Pageant and PuTTYgen About boxes: add the website button. 2017-02-22 07:06:00 +00:00
pageants.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
plink.rc `win-versioninfo': all builds of all Windows binaries now contain 2005-10-04 14:13:28 +00:00
pscp.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
pscp.rc `win-versioninfo': all builds of all Windows binaries now contain 2005-10-04 14:13:28 +00:00
psftp.rc `win-versioninfo': all builds of all Windows binaries now contain 2005-10-04 14:13:28 +00:00
putty.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
putty.iss Update version number for 0.70 release. 2017-07-04 20:29:54 +01:00
putty.mft Make manifest files work with 64bit builds of PuTTY. 2015-08-15 13:54:44 +01:00
putty.rc `win-versioninfo': all builds of all Windows binaries now contain 2005-10-04 14:13:28 +00:00
puttycfg.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
puttygen.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
puttygen.mft Make manifest files work with 64bit builds of PuTTY. 2015-08-15 13:54:44 +01:00
puttygen.rc Pageant and PuTTYgen About boxes: add the website button. 2017-02-22 07:06:00 +00:00
puttyins.ico `installer.ico' doesn't fit into 8.3, so gets truncated to INSTALLE.ICO in 2007-02-06 22:39:15 +00:00
puttytel.mft Give PuTTYtel its own Windows manifest file. 2018-10-06 11:57:59 +01:00
puttytel.rc Give PuTTYtel its own Windows manifest file. 2018-10-06 11:57:59 +01:00
rcstuff.h Remove Makefile.bor. 2017-09-13 19:26:28 +01:00
README-msi.txt Switch chiark URLs to https. 2017-05-07 16:29:01 +01:00
README.txt Switch chiark URLs to https. 2017-05-07 16:29:01 +01:00
sizetip.c Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00
version.rc2 Rewrite some comments with FIXMEs in them. 2018-10-06 11:57:59 +01:00
website.url Switch chiark URLs to https. 2017-05-07 16:29:01 +01:00
win_res.h Use readonly edit controls in some Windows dialogs. 2016-02-29 19:59:35 +00:00
win_res.rc2 Rewrite some comments with FIXMEs in them. 2018-10-06 11:57:59 +01:00
wincapi.c Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00
wincapi.h Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00
wincfg.c Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00
wincons.c Make bufchain_prefix return a ptrlen. 2019-02-06 21:46:10 +00:00
winctrls.c Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00
windefs.c Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00
windlg.c Remove a load of obsolete printf string limits. 2018-12-08 21:06:59 +00:00
window.c New array-growing macros: sgrowarray and sgrowarrayn. 2019-02-28 20:15:38 +00:00
wingss.c Fix a Windows warning on a strange cast. 2018-06-03 16:52:25 +01:00
winhandl.c New array-growing macros: sgrowarray and sgrowarrayn. 2019-02-28 20:15:38 +00:00
winhelp.c Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00
winhelp.h Add option whether to include header when logging. 2018-09-26 12:13:01 +01:00
winhsock.c Make bufchain_prefix return a ptrlen. 2019-02-06 21:46:10 +00:00
winjump.c Nitpick: fix missing 'void' in one declaration. 2018-11-03 13:45:00 +00:00
winmisc.c New array-growing macros: sgrowarray and sgrowarrayn. 2019-02-28 20:15:38 +00:00
winmiscs.c New Windows utility function: is_console_handle(). 2019-02-20 07:27:13 +00:00
winnet.c Remove reallocation loop in Windows get_hostname. 2019-02-28 20:02:39 +00:00
winnoise.c Replace PuTTY's PRNG with a Fortuna-like system. 2019-01-23 22:36:17 +00:00
winnojmp.c Fix up svn:eol-style and svn:keywords on new files. 2010-12-27 00:24:48 +00:00
winnpc.c Move all extern declarations into header files. 2018-11-03 13:47:29 +00:00
winnps.c Move all extern declarations into header files. 2018-11-03 13:47:29 +00:00
winpgen.c Windows PuTTYgen: bound entropy input by PRNG state size. 2019-02-10 13:44:50 +00:00
winpgnt.c Stop using unqualified {GET,PUT}_32BIT. 2019-02-04 20:32:31 +00:00
winpgntc.c Stop using unqualified {GET,PUT}_32BIT. 2019-02-04 20:32:31 +00:00
winplink.c New array-growing macros: sgrowarray and sgrowarrayn. 2019-02-28 20:15:38 +00:00
winprint.c Make bufchain_prefix return a ptrlen. 2019-02-06 21:46:10 +00:00
winproxy.c Move all extern declarations into header files. 2018-11-03 13:47:29 +00:00
winsecur.c Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00
winsecur.h Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00
winser.c Make lots of 'int' length fields into size_t. 2019-02-06 21:46:10 +00:00
winsftp.c New array-growing macros: sgrowarray and sgrowarrayn. 2019-02-28 20:15:38 +00:00
winshare.c Access all hashes and MACs through the standard API. 2019-01-20 17:09:24 +00:00
winstore.c New array-growing macros: sgrowarray and sgrowarrayn. 2019-02-28 20:15:38 +00:00
winstuff.h Move the Minefield function prototypes into puttymem.h. 2019-02-28 20:02:39 +00:00
wintime.c wintime: add a precautionary memset to zero. 2017-02-14 23:25:25 +00:00
winucs.c Start using C99 variadic macros. 2018-12-08 20:48:41 +00:00
winutils.c New array-growing macros: sgrowarray and sgrowarrayn. 2019-02-28 20:15:38 +00:00
winx11.c Convert a lot of 'int' variables to 'bool'. 2018-11-03 13:45:00 +00:00

PuTTY README
============

This is the README file for the PuTTY installer distribution. If
you're reading this, you've probably just run our installer and
installed PuTTY on your system.

What should I do next?
----------------------

If you want to use PuTTY to connect to other computers, or use PSFTP
to transfer files, you should just be able to run them from the
Start menu.

If you want to use the command-line-only file transfer utility PSCP,
you will probably want to put the PuTTY installation directory on
your PATH. On Windows 7 and similar versions, you can do this at
Control Panel > System and Security > System > Advanced system
settings > Environment Variables.

Some versions of Windows will refuse to run HTML Help files (.CHM)
if they are installed on a network drive. If you have installed
PuTTY on a network drive, you might want to check that the help file
works properly. If not, see http://support.microsoft.com/kb/896054
for information on how to solve this problem.

What do I do if it doesn't work?
--------------------------------

The PuTTY home web site is

    https://www.chiark.greenend.org.uk/~sgtatham/putty/

Here you will find our list of known bugs and pending feature
requests. If your problem is not listed in there, or in the FAQ, or
in the manuals, read the Feedback page to find out how to report
bugs to us. PLEASE read the Feedback page carefully: it is there to
save you time as well as us. Do not send us one-line bug reports
telling us `it doesn't work'.