Line 503... |
Line 503... |
IPWrite(socket, (uint8*)command, length);
|
IPWrite(socket, (uint8*)command, length);
|
j += 2;
|
j += 2;
|
}
|
}
|
else
|
else
|
{
|
{
|
|
if(buf[j] == 0)
|
|
buf[j] = '\n'; //Linux support
|
if(length < COMMAND_BUFFER_SIZE-4 || (length <
|
if(length < COMMAND_BUFFER_SIZE-4 || (length <
|
COMMAND_BUFFER_SIZE-2 && (buf[j] == '\r' || buf[j] == '\n')))
|
COMMAND_BUFFER_SIZE-2 && (buf[j] == '\r' || buf[j] == '\n')))
|
{
|
{
|
IPWrite(socket, buf+j, 1);
|
IPWrite(socket, buf+j, 1);
|
command[length] = buf[j];
|
command[length] = buf[j];
|
Line 931... |
Line 933... |
}
|
}
|
|
|
socket->userFunc = socket->funcPtr;
|
socket->userFunc = socket->funcPtr;
|
info.startPtr(socket, argv);
|
info.startPtr(socket, argv);
|
}
|
}
|
|
|
|
|
|
typedef struct NameValue_t {
|
|
struct NameValue_t *next;
|
|
void *value;
|
|
char name[1];
|
|
} NameValue_t;
|
|
|
|
//Find the value associated with the name
|
|
void *IPNameValue(const char *name, void *value)
|
|
{
|
|
static NameValue_t *head;
|
|
NameValue_t *node;
|
|
for(node = head; node; node = node->next)
|
|
{
|
|
if(strcmp(node->name, name) == 0)
|
|
break;
|
|
}
|
|
if(node == NULL)
|
|
{
|
|
node = (NameValue_t*)malloc(sizeof(NameValue_t) + (int)strlen(name));
|
|
if(node == NULL)
|
|
return NULL;
|
|
strcpy(node->name, name);
|
|
node->value = value;
|
|
node->next = head;
|
|
head = node;
|
|
}
|
|
if(value)
|
|
node->value = value;
|
|
return node->value;
|
|
}
|
#endif
|
#endif
|
|
|
|
|
#ifdef EDIT_FILE
|
#ifdef EDIT_FILE
|
extern void EditFile(IPSocket *socket, char *argv[]);
|
extern void EditFile(IPSocket *socket, char *argv[]);
|