/**********************************************************************
This file is part of Crack dot Com's free source code release of
Golgotha.
for
information about compiling & licensing issues visit this URL
If that doesn't help, contact Jonathan Clark at golgotha_source@usa.net (Subject should have "GOLG" in it) ***********************************************************************/ #include "url.hh" #include "network/net_sock.hh" #include#include int fb_strneq(char *n1, char *n2, int t) { for (int i=0; i name_to_address(server); if (!addr) return 0; addr->set_port(port); i4_net_socket *sock=prot->connect(addr, I4_CONTINOUS_STREAM); delete addr; if (sock) sock->printf("GET /%s HTTP/1.0\n\n",page); return sock; } fb_url::fb_url(char *name, fb_url *server_from) { char server[256], page[256], buf[256]; int port; fb_url_type type; // split the name up fb_split_url(name, type, server, port, page); // if no server name in url try to use the current server if (!server[0] && server_from) { fb_url_type type2; fb_split_url(server_from->full_name, type2, server, port, page); if (name[0]!='/') { if (page[strlen(page)-1]!='/') strcat(page,"/"); sprintf(buf,"http://%s:%d/%s%s",server, port, page, name); } else if (name[0]!='/') sprintf(buf,"http://%s:%d/%s",server, port, name); else sprintf(buf,"http://%s:%d/%s",server, port, name); name=buf; } int l=strlen(name)+1; full_name=(char *)i4_malloc(l,""); strcpy(full_name, name); } char *fb_url::get_extension() { char *ext=0; for (char *c=full_name; *c; c++) if (*c=='.') ext=c; else if (*c=='/' || *c=='\\') ext=0; return ext; } char *fb_url::get_filename() { // extract the filename char *c=full_name, *start=0; for (; *c; c++) if (*c=='/') start=c; if (*start=='/') start++; return start; }