annotate dbhelpers.c @ 1289:a23386821e9f

Add -c <command> option to force a specific command This change adds a -c option to dropbear, to force the session to use a specific command, in a similar fashion to OpenSSH's ForceCommand configuration option. This is useful to provide a simple fixed service over ssh, without requiring an authorized key file for the per-key forced_command option. This setting takes precedence over the channel session's provided command, and the per-key forced_command setting. Signed-off-by: Jeremy Kerr <[email protected]>
author Jeremy Kerr <jk@ozlabs.org>
date Tue, 12 Apr 2016 21:01:08 +0800
parents 3017bc7d6238
children 4b1a807a3188
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1283
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
1 #include "dbhelpers.h"
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
2 #include "includes.h"
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
3
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
4 /* Erase data */
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
5 void m_burn(void *data, unsigned int len) {
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
6
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
7 #if defined(HAVE_MEMSET_S)
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
8 memset_s(data, len, 0x0, len);
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
9 #elif defined(HAVE_EXPLICIT_BZERO)
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
10 explicit_bzero(data, len);
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
11 #else
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
12 /* Based on the method in David Wheeler's
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
13 * "Secure Programming for Linux and Unix HOWTO". May not be safe
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
14 * against link-time optimisation. */
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
15 volatile char *p = data;
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
16
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
17 if (data == NULL)
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
18 return;
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
19 while (len--) {
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
20 *p++ = 0x0;
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
21 }
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
22 #endif
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
23 }
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
24
3017bc7d6238 move m_burn and function attributes to dbhelpers
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
25