2 * Copyright (C) 2009 Red Hat Inc.
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
27 #include "hostinfod.h"
30 ping (struct guest_description *hval,
31 const char *cmd, apr_array_header_t *args)
36 if (!get_args ("s", &echodata)) {
37 send_error (hval, 400);
40 len = strlen (echodata);
41 if (len < 1 || len > 16) {
42 send_error (hval, 400);
46 for (i = 0; i < len; ++i)
47 if (!((echodata[i] >= 'a' && echodata[i] <= 'z') ||
48 (echodata[i] >= 'A' && echodata[i] <= 'Z') ||
49 (echodata[i] >= '0' && echodata[i] <= '9'))) {
50 send_error (hval, 400);
57 REGISTER_COMMAND ("ping", ping)