projects
/
paraslash.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
net.c: Remove unnecessary crypto includes.
[paraslash.git]
/
command.c
diff --git
a/command.c
b/command.c
index 8fdb839a97be1e6c459f5911621fffa88d61410b..5217f9b487cd260aebe5d5a986f4fd8e957b0270 100644
(file)
--- a/
command.c
+++ b/
command.c
@@
-1,5
+1,5
@@
/*
/*
- * Copyright (C) 1997-20
09
Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 1997-20
11
Andre Noll <maan@systemlinux.org>
*
* Licensed under the GPL v2. For licencing details see COPYING.
*/
*
* Licensed under the GPL v2. For licencing details see COPYING.
*/
@@
-13,6
+13,7
@@
#include <dirent.h>
#include <openssl/rc4.h>
#include <osl.h>
#include <dirent.h>
#include <openssl/rc4.h>
#include <osl.h>
+#include <stdbool.h>
#include "para.h"
#include "error.h"
#include "para.h"
#include "error.h"
@@
-23,9
+24,9
@@
#include "afh.h"
#include "afs.h"
#include "server.h"
#include "afh.h"
#include "afs.h"
#include "server.h"
-#include "vss.h"
#include "list.h"
#include "send.h"
#include "list.h"
#include "send.h"
+#include "vss.h"
#include "rc4.h"
#include "net.h"
#include "daemon.h"
#include "rc4.h"
#include "net.h"
#include "daemon.h"
@@
-191,10
+192,10
@@
static int check_sender_args(int argc, char * const * argv, struct sender_comman
int com_sender(struct rc4_context *rc4c, int argc, char * const * argv)
{
int i, ret;
int com_sender(struct rc4_context *rc4c, int argc, char * const * argv)
{
int i, ret;
+ char *msg = NULL;
struct sender_command_data scd;
if (argc < 2) {
struct sender_command_data scd;
if (argc < 2) {
- char *msg = NULL;
for (i = 0; senders[i].name; i++) {
char *tmp = make_message("%s%s\n",
msg? msg : "", senders[i].name);
for (i = 0; senders[i].name; i++) {
char *tmp = make_message("%s%s\n",
msg? msg : "", senders[i].name);
@@
-207,7
+208,6
@@
int com_sender(struct rc4_context *rc4c, int argc, char * const * argv)
}
ret = check_sender_args(argc, argv, &scd);
if (ret < 0) {
}
ret = check_sender_args(argc, argv, &scd);
if (ret < 0) {
- char *msg;
if (scd.sender_num < 0)
return ret;
msg = senders[scd.sender_num].help();
if (scd.sender_num < 0)
return ret;
msg = senders[scd.sender_num].help();
@@
-215,6
+215,16
@@
int com_sender(struct rc4_context *rc4c, int argc, char * const * argv)
free(msg);
return ret;
}
free(msg);
return ret;
}
+
+ switch (scd.cmd_num) {
+ case SENDER_ADD:
+ case SENDER_DELETE:
+ assert(senders[scd.sender_num].resolve_target);
+ ret = senders[scd.sender_num].resolve_target(argv[3], &scd);
+ if (ret < 0)
+ return ret;
+ }
+
for (i = 0; i < 10; i++) {
mutex_lock(mmd_mutex);
if (mmd->sender_cmd_data.cmd_num >= 0) {
for (i = 0; i < 10; i++) {
mutex_lock(mmd_mutex);
if (mmd->sender_cmd_data.cmd_num >= 0) {
@@
-234,7
+244,7
@@
int com_si(struct rc4_context *rc4c, int argc, __a_unused char * const * argv)
{
int i, ret;
char *ut;
{
int i, ret;
char *ut;
- char *sender_info = NULL
, *sender_list = NULL
;
+ char *sender_info = NULL;
if (argc != 1)
return -E_COMMAND_SYNTAX;
if (argc != 1)
return -E_COMMAND_SYNTAX;
@@
-243,17
+253,15
@@
int com_si(struct rc4_context *rc4c, int argc, __a_unused char * const * argv)
char *info = senders[i].info();
sender_info = para_strcat(sender_info, info);
free(info);
char *info = senders[i].info();
sender_info = para_strcat(sender_info, info);
free(info);
- sender_list = para_strcat(sender_list, senders[i].name);
- sender_list = para_strcat(sender_list, " ");
}
ut = uptime_str();
}
ut = uptime_str();
- ret = rc4_send_va_buffer(rc4c, "up: %s\nplayed: %u\n"
+ ret = rc4_send_va_buffer(rc4c, "version: " GIT_VERSION "\n"
+ "up: %s\nplayed: %u\n"
"server_pid: %d\n"
"afs_pid: %d\n"
"connections (active/accepted/total): %u/%u/%u\n"
"current loglevel: %s\n"
"supported audio formats: %s\n"
"server_pid: %d\n"
"afs_pid: %d\n"
"connections (active/accepted/total): %u/%u/%u\n"
"current loglevel: %s\n"
"supported audio formats: %s\n"
- "supported senders: %s\n"
"%s",
ut, mmd->num_played,
(int)getppid(),
"%s",
ut, mmd->num_played,
(int)getppid(),
@@
-262,13
+270,11
@@
int com_si(struct rc4_context *rc4c, int argc, __a_unused char * const * argv)
mmd->num_commands,
mmd->num_connects,
conf.loglevel_arg,
mmd->num_commands,
mmd->num_connects,
conf.loglevel_arg,
- supported_audio_formats(),
- sender_list,
+ SERVER_AUDIO_FORMATS,
sender_info
);
mutex_unlock(mmd_mutex);
free(ut);
sender_info
);
mutex_unlock(mmd_mutex);
free(ut);
- free(sender_list);
free(sender_info);
return ret;
}
free(sender_info);
return ret;
}
@@
-453,10
+459,8
@@
int com_help(struct rc4_context *rc4c, int argc, char * const * argv)
}
/* argument given for help */
cmd = get_cmd_ptr(argv[1], &handler);
}
/* argument given for help */
cmd = get_cmd_ptr(argv[1], &handler);
- if (!cmd) {
- free(handler);
+ if (!cmd)
return -E_BAD_CMD;
return -E_BAD_CMD;
- }
perms = cmd_perms_itohuman(cmd->perms);
ret = rc4_send_va_buffer(rc4c,
"%s - %s\n\n"
perms = cmd_perms_itohuman(cmd->perms);
ret = rc4_send_va_buffer(rc4c,
"%s - %s\n\n"
@@
-740,24
+744,24
@@
__noreturn void handle_connect(int fd, const char *peername)
/* we need a blocking fd here as recv() might return EAGAIN otherwise. */
ret = mark_fd_blocking(fd);
if (ret < 0)
/* we need a blocking fd here as recv() might return EAGAIN otherwise. */
ret = mark_fd_blocking(fd);
if (ret < 0)
- goto
err_out
;
+ goto
net_err
;
/* send Welcome message */
ret = send_va_buffer(fd, "This is para_server, version "
PACKAGE_VERSION ".\n" );
if (ret < 0)
/* send Welcome message */
ret = send_va_buffer(fd, "This is para_server, version "
PACKAGE_VERSION ".\n" );
if (ret < 0)
- goto
err_out
;
+ goto
net_err
;
/* recv auth request line */
ret = recv_buffer(fd, buf, sizeof(buf));
if (ret < 0)
/* recv auth request line */
ret = recv_buffer(fd, buf, sizeof(buf));
if (ret < 0)
- goto
err_out
;
+ goto
net_err
;
if (ret < 10) {
ret = -E_AUTH_REQUEST;
if (ret < 10) {
ret = -E_AUTH_REQUEST;
- goto
err_out
;
+ goto
net_err
;
}
numbytes = ret;
ret = -E_AUTH_REQUEST;
if (strncmp(buf, AUTH_REQUEST_MSG, strlen(AUTH_REQUEST_MSG)))
}
numbytes = ret;
ret = -E_AUTH_REQUEST;
if (strncmp(buf, AUTH_REQUEST_MSG, strlen(AUTH_REQUEST_MSG)))
- goto
err_out
;
+ goto
net_err
;
p = buf + strlen(AUTH_REQUEST_MSG);
PARA_DEBUG_LOG("received auth request for user %s\n", p);
ret = -E_BAD_USER;
p = buf + strlen(AUTH_REQUEST_MSG);
PARA_DEBUG_LOG("received auth request for user %s\n", p);
ret = -E_BAD_USER;
@@
-767,7
+771,7
@@
__noreturn void handle_connect(int fd, const char *peername)
ret = para_encrypt_buffer(u->rsa, rand_buf, sizeof(rand_buf),
(unsigned char *)buf);
if (ret < 0)
ret = para_encrypt_buffer(u->rsa, rand_buf, sizeof(rand_buf),
(unsigned char *)buf);
if (ret < 0)
- goto
err_out
;
+ goto
net_err
;
numbytes = ret;
} else {
/*
numbytes = ret;
} else {
/*