Numerous minor fixes to nap plugin
This commit is contained in:
@@ -273,11 +273,9 @@ int connectbynumber(char *hostn, unsigned short *portnum, int service, int proto
|
||||
/* Inet domain client */
|
||||
else if (service == SERVICE_CLIENT)
|
||||
{
|
||||
struct sockaddr_foobar server;
|
||||
struct sockaddr_foobar server = { 0 };
|
||||
struct hostent *hp;
|
||||
|
||||
memset(&server, 0, sizeof(struct sockaddr_in));
|
||||
|
||||
if (isdigit(hostn[strlen(hostn)-1]))
|
||||
inet_aton(hostn, (struct in_addr *)&server.sf_addr);
|
||||
else
|
||||
@@ -313,15 +311,15 @@ int connectbynumber(char *hostn, unsigned short *portnum, int service, int proto
|
||||
return fd;
|
||||
}
|
||||
|
||||
|
||||
|
||||
char *numeric_banner(int curr)
|
||||
{
|
||||
static char thing[4];
|
||||
|
||||
if (!get_dllint_var("napster_show_numeric"))
|
||||
return (nap_ansi?nap_ansi:empty_string);
|
||||
sprintf(thing, "%3.3u", curr);
|
||||
return (thing);
|
||||
return nap_ansi ? nap_ansi : empty_string;
|
||||
|
||||
snprintf(thing, sizeof thing, "%3.3d", curr);
|
||||
return thing;
|
||||
}
|
||||
|
||||
static void set_numeric_string(Window *win, char *value, int unused)
|
||||
@@ -1015,10 +1013,12 @@ char *chan;
|
||||
if (!(chan = next_arg(args, &args)))
|
||||
return 0;
|
||||
ch = (ChannelStruct *)find_in_list((List **)&nchannels, chan, 0);
|
||||
if (!ch)
|
||||
return 0;
|
||||
|
||||
ch->injoin = 0;
|
||||
if (do_hook(MODULE_LIST, "NAP ENDNAMES %s", chan))
|
||||
{
|
||||
if (ch)
|
||||
name_print(ch->nicks, 0);
|
||||
}
|
||||
malloc_strcpy(&nap_current_channel, chan);
|
||||
@@ -1746,7 +1746,7 @@ char *type = NULL;
|
||||
}
|
||||
else if (strstr(cmd, "line"))
|
||||
{
|
||||
if (value < 0 || value > 10)
|
||||
if (value > 10)
|
||||
{
|
||||
nap_say("%s", cparse("Allowed linespeed 0-10", NULL));
|
||||
return;
|
||||
|
||||
@@ -482,12 +482,11 @@ unsigned long nbytes = 0;
|
||||
if (gf && gf->count)
|
||||
{
|
||||
int flags = O_WRONLY;
|
||||
memset(&indata, 0, 200);
|
||||
if ((rc = read(snum, &indata, gf->count)) != gf->count)
|
||||
return;
|
||||
if (!isdigit(*indata) || !*(indata+1) || !isdigit(*(indata+1)))
|
||||
{
|
||||
rc += read(snum, &indata[gf->count], sizeof(indata)-1);
|
||||
rc += read(snum, &indata[gf->count], sizeof indata - gf->count);
|
||||
indata[rc] = 0;
|
||||
nap_say("Request from %s is %s", gf->nick, indata);
|
||||
gf = find_in_getfile(&getfile_struct, 1, gf->nick, gf->checksum, gf->filename, -1, NAP_DOWNLOAD);
|
||||
@@ -525,7 +524,8 @@ unsigned long nbytes = 0;
|
||||
send_ncommand(CMDS_UPDATE_GET, NULL);
|
||||
return;
|
||||
}
|
||||
if ((rc = ioctl(snum, FIONREAD, &nbytes) != -1))
|
||||
rc = ioctl(snum, FIONREAD, &nbytes);
|
||||
if (rc != -1)
|
||||
{
|
||||
if (nbytes)
|
||||
{
|
||||
|
||||
@@ -65,7 +65,7 @@ char *mime_type[] = { "x-wav", "x-aiff", "x-midi", "x-mod", "x-mp3", /* 0-4 */
|
||||
char *audio[] = {".wav", ".aiff", ".mid", ".mod", ".mp3", ""};
|
||||
char *image[] = {".jpg", ".gif", ""};
|
||||
char *video[] = {".mpg", ".dat", ""};
|
||||
char *application[] = {".tar.gz" ".tar.Z", ".Z", ".gz", ".arc", ".bz2", ".zip", ""};
|
||||
char *application[] = {".tar.gz", ".tar.Z", ".Z", ".gz", ".arc", ".bz2", ".zip", ""};
|
||||
|
||||
char *find_mime_type(char *fn)
|
||||
{
|
||||
@@ -259,7 +259,7 @@ char *make_mp3_string(FILE *fp, Files *f, char *fs, char *dirbuff)
|
||||
*s++ = *fs;
|
||||
break;
|
||||
case 'b':
|
||||
sprintf(s, "%*u", prec, f->bitrate);
|
||||
sprintf(s, "%*d", prec, f->bitrate);
|
||||
break;
|
||||
case 's':
|
||||
if (!prec) prec = 3;
|
||||
@@ -287,7 +287,7 @@ char *make_mp3_string(FILE *fp, Files *f, char *fs, char *dirbuff)
|
||||
sprintf(s, "%*.*f", prec, fl, ((double)f->freq) / ((double)1000.0));
|
||||
break;
|
||||
case 'h':
|
||||
sprintf(s, "%*u", prec, f->freq);
|
||||
sprintf(s, "%*d", prec, f->freq);
|
||||
break;
|
||||
default:
|
||||
*s++ = *fs;
|
||||
@@ -364,7 +364,7 @@ char *fs = NULL;
|
||||
*dir = 0;
|
||||
for (new = fserv_files; new; new = new->next)
|
||||
{
|
||||
if (!pattern || (pattern && wild_match(pattern, new->filename)))
|
||||
if (!pattern || wild_match(pattern, new->filename))
|
||||
{
|
||||
char *p;
|
||||
p = base_name(new->filename);
|
||||
@@ -681,7 +681,7 @@ long get_bitrate(int fdes, time_t *mp3_time, int *freq_rate, unsigned long *file
|
||||
lseek(fdes, 0, SEEK_SET);
|
||||
*id3 = 0;
|
||||
rc = read(fdes, buff, 128);
|
||||
if (!strncmp(buff, "ID3", 3))
|
||||
if (rc == 128 && !strncmp(buff, "ID3", 3))
|
||||
{
|
||||
struct id3v2 {
|
||||
char tag[3];
|
||||
@@ -725,8 +725,6 @@ md5_state_t state;
|
||||
char buffer[BIG_BUFFER_SIZE+1];
|
||||
struct stat st;
|
||||
unsigned long size = DEFAULT_MD5_SIZE;
|
||||
int di = 0;
|
||||
int rc;
|
||||
|
||||
#if !defined(WINNT) && !defined(__EMX__)
|
||||
char *m;
|
||||
@@ -750,7 +748,9 @@ int rc;
|
||||
#if defined(WINNT) || defined(__EMX__)
|
||||
while (size)
|
||||
{
|
||||
int rc;
|
||||
unsigned char md5_buff[8 * NAP_BUFFER_SIZE+1];
|
||||
|
||||
rc = (size >= (8 * NAP_BUFFER_SIZE)) ? 8 * NAP_BUFFER_SIZE : size;
|
||||
rc = read(r, md5_buff, rc);
|
||||
md5_append(&state, (unsigned char *)md5_buff, rc);
|
||||
@@ -768,11 +768,13 @@ int rc;
|
||||
md5_finish(digest, &state);
|
||||
munmap(m, size);
|
||||
#endif
|
||||
memset(buffer, 0, 200);
|
||||
for (di = 0, rc = 0; di < 16; ++di, rc += 2)
|
||||
snprintf(&buffer[rc], BIG_BUFFER_SIZE, "%02x", digest[di]);
|
||||
strcat(buffer, "-");
|
||||
strcat(buffer, ltoa(st.st_size));
|
||||
snprintf(buffer, sizeof buffer,
|
||||
"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x-%ld",
|
||||
digest[0], digest[1], digest[2], digest[3],
|
||||
digest[4], digest[5], digest[6], digest[7],
|
||||
digest[8], digest[9], digest[10], digest[11],
|
||||
digest[12], digest[13], digest[14], digest[15],
|
||||
(long)st.st_size);
|
||||
}
|
||||
return m_strdup(buffer);
|
||||
}
|
||||
@@ -859,7 +861,7 @@ unsigned int scan_mp3_dir(char *path, int recurse, int reload, int share, int se
|
||||
count++;
|
||||
if (share && (nap_socket != -1))
|
||||
{
|
||||
sprintf(buffer, "\"%s\" %s %lu %u %u %ld", new->filename,
|
||||
sprintf(buffer, "\"%s\" %s %lu %d %d %ld", new->filename,
|
||||
new->checksum, new->filesize, new->bitrate, new->freq,
|
||||
(long)new->time);
|
||||
send_ncommand(CMDS_ADDFILE, convertnap_dos(buffer));
|
||||
@@ -969,7 +971,7 @@ Files *new;
|
||||
{
|
||||
for (new = fserv_files; new; new = new->next)
|
||||
{
|
||||
fprintf(fp, "\"%s\" %s %lu %u %u %ld\n",
|
||||
fprintf(fp, "\"%s\" %s %lu %d %d %ld\n",
|
||||
new->filename, new->checksum, new->filesize,
|
||||
new->bitrate, new->freq, (long)new->time);
|
||||
count++;
|
||||
@@ -1119,7 +1121,7 @@ Files *new;
|
||||
|
||||
if (new->freq && new->bitrate)
|
||||
{
|
||||
sprintf(buffer, "\"%s\" %s %lu %u %u %ld", name,
|
||||
sprintf(buffer, "\"%s\" %s %lu %d %d %ld", name,
|
||||
new->checksum, new->filesize, new->bitrate, new->freq,
|
||||
(long)new->time);
|
||||
cmd = CMDS_ADDFILE;
|
||||
@@ -1537,7 +1539,6 @@ void nap_firewall_start(int snum)
|
||||
void napfile_read(int snum)
|
||||
{
|
||||
GetFile *gf;
|
||||
char buffer[NAP_BUFFER_SIZE+1];
|
||||
int rc;
|
||||
SocketList *s = get_socket(snum);
|
||||
|
||||
@@ -1574,7 +1575,6 @@ void napfile_read(int snum)
|
||||
|| !(gf = find_in_getfile(&napster_sendqueue, 0, nick, NULL, fbuff, -1, NAP_UPLOAD))
|
||||
|| (gf->write == -1))
|
||||
{
|
||||
memset(buff, 0, 80);
|
||||
if (!gf)
|
||||
sprintf(buff, "0INVALID REQUEST");
|
||||
else
|
||||
@@ -1583,7 +1583,7 @@ void napfile_read(int snum)
|
||||
if ((gf = find_in_getfile(&napster_sendqueue, 1, nick, NULL, fbuff, -1, NAP_UPLOAD)))
|
||||
gf->socket = snum;
|
||||
}
|
||||
write(snum, buff, strlen(buffer));
|
||||
write(snum, buff, strlen(buff));
|
||||
nap_finished_file(snum, gf);
|
||||
return;
|
||||
}
|
||||
@@ -1597,7 +1597,6 @@ void napfile_read(int snum)
|
||||
gf->socket = snum;
|
||||
lseek(gf->write, SEEK_SET, gf->resume);
|
||||
set_socketinfo(snum, gf);
|
||||
memset(buff, 0, 80);
|
||||
sprintf(buff, "%lu", gf->filesize);
|
||||
write(snum, buff, strlen(buff));
|
||||
s->func_write = s->func_read;
|
||||
@@ -1617,11 +1616,10 @@ void napfile_read(int snum)
|
||||
|
||||
void naplink_handleconnect(int snum)
|
||||
{
|
||||
char buff[2*NAP_BUFFER_SIZE+1];
|
||||
char buff[2*NAP_BUFFER_SIZE+1] = { 0 };
|
||||
SocketList *s;
|
||||
int rc;
|
||||
|
||||
memset(buff, 0, sizeof(buff) - 1);
|
||||
switch ((rc = recv(snum, buff, 4, MSG_PEEK)))
|
||||
{
|
||||
|
||||
|
||||
Reference in New Issue
Block a user