comparison SMALL @ 4:fe6bca95afa7 contains updated files required
author Matt Johnston <>
date Tue, 01 Jun 2004 02:46:09 +0000
children b9d3f725e00b
equal deleted inserted replaced
-1:000000000000 4:fe6bca95afa7
1 Tips for a small system:
3 The following are set in options.h
5 - You can safely disable blowfish and twofish ciphers, and MD5 hmac, without
6 affecting interoperability
8 - If you're compiling statically, you can turn off host lookups
10 - You can disable either password or public-key authentication, though note
11 that the IETF draft states that pubkey authentication is required.
13 - Similarly with DSS and RSA, you can disable one of these if you know that
14 all clients will be able to support a particular one. The IETF draft
15 states that DSS is required, however you may prefer to use RSA.
16 DON'T disable either of these on systems where you aren't 100% sure about
17 who will be connecting and what clients they will be using.
19 - Disabling the MOTD code and SFTP-SERVER may save a small amount of codesize
21 - You can disable x11, tcp and agent forwarding as desired. None of these are
22 essential, although agent-forwarding is often useful even on firewall boxes.
24 If you are compiling statically, you may want to disable zlib, as it will use
25 a few tens of kB of binary-size (./configure --disable-zlib).
27 You can create a combined binary, see the file MULTI, which will put all
28 the functions into one binary, avoiding repeated code.
30 If you're compiling with gcc, you might want to look at gcc's options for
31 stripping unused code. The relevant vars to set before configure are:
33 LDFLAGS=-Wl,--gc-sections
34 CFLAGS="-ffunction-sections -fdata-sections"
36 You can also experiment with optimisation flags such as -Os, note that in some
37 cases these flags actually seem to increase size, so experiment before
38 deciding.
40 Of course using small C libraries such as uClibc and dietlibc can also help.
42 If you have any queries, mail me and I'll see if I can help.