#include "rcs_defs.hh"#include "inetfile.hh"#include <stdio.h>#include <string.h>#include <stdlib.h>#include "WWWLib.h"#include "WWWHTTP.h"#include "WWWInit.h"#include <dlfcn.h>Include dependency graph for inetfile.cc:

Go to the source code of this file.
Data Structures | |
| struct | _HTAtom |
| class | INET_FILE |
Defines | |
| #define | DL(x) x |
| #define | YES (BOOL)1 |
| #define | DL(x) ptr_to_##x |
Typedefs | |
| typedef _HTAtom | HTAtom |
| typedef void * | HTAnchor |
| typedef void * | HTStream |
| typedef void * | HTChunk |
| typedef void * | HTFormat |
| typedef void(* | HTMemory_free_func_type )(void *) |
| typedef HTRequest *(* | HTRequest_new_func_type )(void) |
| typedef BOOL(* | HTLibInit_func_type )(const char *AppName, const char *AppVersion) |
| typedef HTList *(* | HTList_new_func_type )(void) |
| typedef void(* | HTTransportInit_func_type )(void) |
| typedef void(* | HTProtocolInit_func_type )(void) |
| typedef void(* | HTNetInit_func_type )(void) |
| typedef void(* | HTConverterInit_func_type )(HTList *conversions) |
| typedef void(* | HTFormat_setConversion_func_type )(HTList *list) |
| typedef void(* | HTEncoderInit_func_type )(HTList *encodings) |
| typedef void(* | HTFormat_setTransferCoding_func_type )(HTList *encodings) |
| typedef void(* | HTMIMEInit_func_type )(void) |
| typedef HTAtom *(* | HTAtom_for_func_type )(const char *string) |
| typedef void(* | HTRequest_setOutputStream_func_type )(HTRequest *request, HTStream *output) |
| typedef void(* | HTRequest_setPreemptive_func_type )(HTRequest *request, BOOL mode) |
| typedef char *(* | HTGetCurrentDirectoryURL_func_type )(void) |
| typedef void(* | HTRequest_setOutputFormat_func_type )(HTRequest *request, HTFormat format) |
| typedef char *(* | HTParse_func_type )(const char *aName, const char *relatedName, int wanted) |
| typedef HTAnchor *(* | HTAnchor_findAddress_func_type )(const char *address) |
| typedef HTChunk *(* | HTLoadAnchorToChunk_func_type )(HTAnchor *anchor, HTRequest *request) |
| typedef char *(* | HTChunk_toCString_func_type )(HTChunk *ch) |
| typedef void(* | HTRequest_delete_func_type )(HTRequest *request) |
| typedef void(* | HTFormat_deleteAll_func_type )(void) |
| typedef BOOL(* | HTLibTerminate_func_type )(void) |
Functions | |
| int | load_libwww_functions (void *handle) |
| int | load_libwww () |
| RCS_EXPORT int | inet_file_init (const char *agent_name, char *agent_version, int debug) |
| RCS_EXPORT INET_FILE * | inet_file_open (const char *url, char *type) |
| RCS_EXPORT char * | inet_file_gets (char *str, int maxlen, INET_FILE *inet_file) |
| RCS_EXPORT int | inet_file_close (INET_FILE *inet_file) |
| RCS_EXPORT int | inet_file_eof (INET_FILE *inet_file) |
| RCS_EXPORT int | inet_file_exit () |
| RCS_EXPORT int | inet_file_rewind (INET_FILE *ifp) |
Variables | |
| int | inet_file_initialized = 0 |
| void(* | ptr_to_HTMemory_free )(void *)=NULL |
| HTRequest *(* | ptr_to_HTRequest_new )(void)=NULL |
| BOOL(* | ptr_to_HTLibInit )(const char *AppName, const char *AppVersion)=NULL |
| HTList *(* | ptr_to_HTList_new )(void)=NULL |
| void(* | ptr_to_HTTransportInit )(void)=NULL |
| void(* | ptr_to_HTProtocolInit )(void)=NULL |
| void(* | ptr_to_HTNetInit )(void)=NULL |
| void(* | ptr_to_HTConverterInit )(HTList *conversions)=NULL |
| void(* | ptr_to_HTFormat_setConversion )(HTList *list)=NULL |
| void(* | ptr_to_HTEncoderInit )(HTList *encodings)=NULL |
| void(* | ptr_to_HTFormat_setTransferCoding )(HTList *encodings)=NULL |
| void(* | ptr_to_HTMIMEInit )(void)=NULL |
| HTAtom *(* | ptr_to_HTAtom_for )(const char *string)=NULL |
| void(* | ptr_to_HTRequest_setOutputStream )(HTRequest *request, HTStream *output) |
| void(* | ptr_to_HTRequest_setPreemptive )(HTRequest *request, BOOL mode)=NULL |
| char *(* | ptr_to_HTGetCurrentDirectoryURL )(void)=NULL |
| void(* | ptr_to_HTRequest_setOutputFormat )(HTRequest *request, HTFormat format)=NULL |
| char *(* | ptr_to_HTParse )(const char *aName, const char *relatedName, int wanted)=NULL |
| HTAnchor *(* | ptr_to_HTAnchor_findAddress )(const char *address)=NULL |
| HTChunk *(* | ptr_to_HTLoadAnchorToChunk )(HTAnchor *anchor, HTRequest *request)=NULL |
| char *(* | ptr_to_HTChunk_toCString )(HTChunk *ch)=NULL |
| void(* | ptr_to_HTRequest_delete )(HTRequest *request)=NULL |
| void(* | ptr_to_HTFormat_deleteAll )(void)=NULL |
| BOOL(* | ptr_to_HTLibTerminate )(void)=NULL |
| int | load_libwww_status = 0 |
| void * | libwww_handle = NULL |
| int | show_load_libwww_errors = 1 |
| HTRequest * | request = NULL |
| HTList * | converters = NULL |
| HTList * | encodings = NULL |
|
|
Definition at line 547 of file inetfile.cc. |
|
|
Definition at line 535 of file inetfile.cc. |
|
|
Definition at line 547 of file inetfile.cc. |
|
|
Definition at line 538 of file inetfile.cc. |
|
|
Definition at line 543 of file inetfile.cc. |
|
|
Definition at line 544 of file inetfile.cc. |
|
|
Definition at line 545 of file inetfile.cc. |
|
|
Definition at line 546 of file inetfile.cc. |
|
|
Definition at line 582 of file inetfile.cc. |
|
|
Definition at line 583 of file inetfile.cc. |
|
|
Definition at line 584 of file inetfile.cc. |
|
|
Definition at line 586 of file inetfile.cc. |
|
|
Definition at line 587 of file inetfile.cc. |
|
|
Definition at line 588 of file inetfile.cc. |
|
|
Definition at line 589 of file inetfile.cc. |
|
|
Definition at line 590 of file inetfile.cc. |
|
|
Definition at line 591 of file inetfile.cc. |
|
|
Definition at line 592 of file inetfile.cc. |
|
|
Definition at line 593 of file inetfile.cc. |
|
|
Definition at line 594 of file inetfile.cc. |
|
|
Definition at line 595 of file inetfile.cc. |
|
|
Definition at line 596 of file inetfile.cc. |
|
|
Definition at line 598 of file inetfile.cc. |
|
|
Definition at line 600 of file inetfile.cc. |
|
|
Definition at line 601 of file inetfile.cc. |
|
|
Definition at line 603 of file inetfile.cc. |
|
|
Definition at line 605 of file inetfile.cc. |
|
|
Definition at line 606 of file inetfile.cc. |
|
|
Definition at line 608 of file inetfile.cc. |
|
|
Definition at line 609 of file inetfile.cc. |
|
|
Definition at line 610 of file inetfile.cc. |
|
|
Definition at line 611 of file inetfile.cc. |
|
|
Definition at line 617 of file inetfile.cc. 00618 {
00619 ptr_to_HTMemory_free =
00620 (HTMemory_free_func_type) dlsym (handle, "HTMemory_free");
00621 if (NULL == ptr_to_HTMemory_free)
00622 {
00623 return -1;
00624 }
00625 ptr_to_HTRequest_new =
00626 (HTRequest_new_func_type) dlsym (handle, "HTRequest_new");
00627 if (NULL == ptr_to_HTRequest_new)
00628 {
00629 return -1;
00630 }
00631 ptr_to_HTLibInit = (HTLibInit_func_type) dlsym (handle, "HTLibInit");
00632 if (NULL == ptr_to_HTLibInit)
00633 {
00634 return -1;
00635 }
00636 ptr_to_HTList_new = (HTList_new_func_type) dlsym (handle, "HTList_new");
00637 if (NULL == ptr_to_HTList_new)
00638 {
00639 return -1;
00640 }
00641
00642 ptr_to_HTTransportInit =
00643 (HTTransportInit_func_type) dlsym (handle, "HTTransportInit");
00644 if (NULL == ptr_to_HTTransportInit)
00645 {
00646 return -1;
00647 }
00648
00649 ptr_to_HTProtocolInit =
00650 (HTProtocolInit_func_type) dlsym (handle, "HTProtocolInit");
00651 if (NULL == ptr_to_HTProtocolInit)
00652 {
00653 return -1;
00654 }
00655
00656
00657 ptr_to_HTNetInit = (HTNetInit_func_type) dlsym (handle, "HTNetInit");
00658 if (NULL == ptr_to_HTNetInit)
00659 {
00660 return -1;
00661 }
00662
00663 ptr_to_HTConverterInit =
00664 (HTConverterInit_func_type) dlsym (handle, "HTConverterInit");
00665 if (NULL == ptr_to_HTConverterInit)
00666 {
00667 return -1;
00668 }
00669
00670
00671 ptr_to_HTFormat_setConversion =
00672 (HTFormat_setConversion_func_type) dlsym (handle,
00673 "HTFormat_setConversion");
00674 if (NULL == ptr_to_HTFormat_setConversion)
00675 {
00676 return -1;
00677 }
00678
00679
00680 ptr_to_HTEncoderInit =
00681 (HTEncoderInit_func_type) dlsym (handle, "HTEncoderInit");
00682 if (NULL == ptr_to_HTEncoderInit)
00683 {
00684 return -1;
00685 }
00686
00687 ptr_to_HTFormat_setTransferCoding =
00688 (HTFormat_setTransferCoding_func_type) dlsym (handle,
00689 "HTFormat_setTransferCoding");
00690 if (NULL == ptr_to_HTFormat_setTransferCoding)
00691 {
00692 return -1;
00693 }
00694
00695 ptr_to_HTMIMEInit = (HTMIMEInit_func_type) dlsym (handle, "HTMIMEInit");
00696 if (NULL == ptr_to_HTMIMEInit)
00697 {
00698 return -1;
00699 }
00700
00701 ptr_to_HTAtom_for = (HTAtom_for_func_type) dlsym (handle, "HTAtom_for");
00702 if (NULL == ptr_to_HTAtom_for)
00703 {
00704 return -1;
00705 }
00706
00707 ptr_to_HTRequest_setOutputStream =
00708 (HTRequest_setOutputStream_func_type) dlsym (handle,
00709 "HTRequest_setOutputStream");
00710 if (NULL == ptr_to_HTRequest_setOutputStream)
00711 {
00712 return -1;
00713 }
00714
00715 ptr_to_HTRequest_setPreemptive =
00716 (HTRequest_setPreemptive_func_type) dlsym (handle,
00717 "HTRequest_setPreemptive");
00718 if (NULL == ptr_to_HTRequest_setPreemptive)
00719 {
00720 return -1;
00721 }
00722
00723 ptr_to_HTGetCurrentDirectoryURL =
00724 (HTGetCurrentDirectoryURL_func_type) dlsym (handle,
00725 "HTGetCurrentDirectoryURL");
00726 if (NULL == ptr_to_HTGetCurrentDirectoryURL)
00727 {
00728 return -1;
00729 }
00730
00731 ptr_to_HTRequest_setOutputFormat =
00732 (HTRequest_setOutputFormat_func_type) dlsym (handle,
00733 "HTRequest_setOutputFormat");
00734 if (NULL == ptr_to_HTRequest_setOutputFormat)
00735 {
00736 return -1;
00737 }
00738
00739
00740 ptr_to_HTParse = (HTParse_func_type) dlsym (handle, "HTParse");
00741 if (NULL == ptr_to_HTParse)
00742 {
00743 return -1;
00744 }
00745
00746
00747 ptr_to_HTAnchor_findAddress =
00748 (HTAnchor_findAddress_func_type) dlsym (handle, "HTAnchor_findAddress");
00749 if (NULL == ptr_to_HTAnchor_findAddress)
00750 {
00751 return -1;
00752 }
00753
00754
00755 ptr_to_HTLoadAnchorToChunk =
00756 (HTLoadAnchorToChunk_func_type) dlsym (handle, "HTLoadAnchorToChunk");
00757 if (NULL == ptr_to_HTLoadAnchorToChunk)
00758 {
00759 return -1;
00760 }
00761
00762
00763 ptr_to_HTChunk_toCString =
00764 (HTChunk_toCString_func_type) dlsym (handle, "HTChunk_toCString");
00765 if (NULL == ptr_to_HTChunk_toCString)
00766 {
00767 return -1;
00768 }
00769
00770
00771 ptr_to_HTRequest_delete =
00772 (HTRequest_delete_func_type) dlsym (handle, "HTRequest_delete");
00773 if (NULL == ptr_to_HTRequest_delete)
00774 {
00775 return -1;
00776 }
00777
00778
00779 ptr_to_HTFormat_deleteAll =
00780 (HTFormat_deleteAll_func_type) dlsym (handle, "HTFormat_deleteAll");
00781 if (NULL == ptr_to_HTFormat_deleteAll)
00782 {
00783 return -1;
00784 }
00785
00786
00787 ptr_to_HTLibTerminate =
00788 (HTLibTerminate_func_type) dlsym (handle, "HTLibTerminate");
00789 if (NULL == ptr_to_HTLibTerminate)
00790 {
00791 return -1;
00792 }
00793 return 0;
00794 }
|
|
|
Definition at line 799 of file inetfile.cc. 00800 {
00801 char libwww_name[256];
00802 char *ldpath = getenv ("LD_LIBRARY_PATH");
00803 libwww_handle = dlopen (NULL, RTLD_LAZY | RTLD_GLOBAL);
00804 memset (libwww_name, 0, 256);
00805 if (NULL != libwww_handle)
00806 {
00807 if (load_libwww_functions (libwww_handle) == 0)
00808 {
00809 load_libwww_status = 1;
00810 return 0;
00811 }
00812 }
00813 else
00814 {
00815 fprintf (stderr, "dlopen failed. %s\n", dlerror ());
00816 }
00817 libwww_handle = dlopen ("libwww.so", RTLD_LAZY | RTLD_GLOBAL);
00818 if (NULL != libwww_handle)
00819 {
00820 if (load_libwww_functions (libwww_handle) == 0)
00821 {
00822 load_libwww_status = 1;
00823 return 0;
00824 }
00825 }
00826 else
00827 {
00828 fprintf (stderr, "dlopen(%s) failed. %s\n", libwww_name, dlerror ());
00829 }
00830
00831 if (NULL != ldpath)
00832 {
00833 char *dir = strtok (ldpath, ";:,");
00834 while (NULL != dir)
00835 {
00836 if (*dir == 0)
00837 {
00838 break;
00839 }
00840 strncpy (libwww_name, dir, 256);
00841 strncat (libwww_name, "/libwww.so", 256 - strlen (dir));
00842 libwww_handle = dlopen (libwww_name, RTLD_LAZY | RTLD_GLOBAL);
00843 if (NULL != libwww_handle)
00844 {
00845 if (load_libwww_functions (libwww_handle) == 0)
00846 {
00847 load_libwww_status = 1;
00848 return 0;
00849 }
00850 }
00851 else
00852 {
00853 fprintf (stderr, "dlopen(%s) failed. %s\n", libwww_name,
00854 dlerror ());
00855 }
00856 dir = strtok (NULL, ";:,");
00857 }
00858 }
00859
00860 strncpy (libwww_name, "/isd/proj/rcslib/plat/" PLATNAME "/lib", 256);
00861 strcat (libwww_name, "/libwww.so");
00862 libwww_handle = dlopen (libwww_name, RTLD_LAZY | RTLD_GLOBAL);
00863 if (NULL != libwww_handle)
00864 {
00865 if (load_libwww_functions (libwww_handle) == 0)
00866 {
00867 load_libwww_status = 1;
00868 return 0;
00869 }
00870 }
00871 else
00872 {
00873 fprintf (stderr, "dlopen(%s) failed. %s\n", libwww_name, dlerror ());
00874 }
00875 strncpy (libwww_name, "/usr/local/rcslib/plat/" PLATNAME "/lib", 256);
00876 strcat (libwww_name, "/libwww.so");
00877 libwww_handle = dlopen (libwww_name, RTLD_LAZY | RTLD_GLOBAL);
00878 if (NULL != libwww_handle)
00879 {
00880 if (load_libwww_functions (libwww_handle) == 0)
00881 {
00882 load_libwww_status = 1;
00883 return 0;
00884 }
00885 }
00886 else
00887 {
00888 fprintf (stderr, "dlopen(%s) failed. %s\n", libwww_name, dlerror ());
00889 }
00890 strncpy (libwww_name, "/usr/local/nist/rcslib/plat/" PLATNAME "/lib",
00891 256);
00892 strcat (libwww_name, "/libwww.so");
00893 libwww_handle = dlopen (libwww_name, RTLD_LAZY | RTLD_GLOBAL);
00894 if (NULL != libwww_handle)
00895 {
00896 if (load_libwww_functions (libwww_handle) == 0)
00897 {
00898 load_libwww_status = 1;
00899 return 0;
00900 }
00901 }
00902 else
00903 {
00904 fprintf (stderr, "dlopen(%s) failed. %s\n", libwww_name, dlerror ());
00905 }
00906 return (load_libwww_status = -1);
00907 }
|
|
||||||||||||||||
|
Definition at line 959 of file inetfile.cc. 00960 {
00961 #ifdef DYNAMICALLY_LOAD_LIBWWW
00962 switch (load_libwww_status)
00963 {
00964 case 0:
00965 if (load_libwww () == -1)
00966 {
00967 fprintf (stderr, "Can't load www library.\n");
00968 return (-1);
00969 }
00970 break;
00971 case 1:
00972 break;
00973
00974 case -1:
00975 default:
00976 return (-1);
00977 }
00978 #endif
00979
00980 if (NULL == request)
00981 {
00982 request = DL (HTRequest_new ());
00983 }
00984 if (NULL == converters)
00985 {
00986 converters = DL (HTList_new ()); /* List of converters */
00987 }
00988 if (NULL == encodings)
00989 {
00990 encodings = DL (HTList_new ()); /* List of encodings */
00991 }
00992
00993 if (NULL == agent_name)
00994 {
00995 agent_name = "InetFileAgent";
00996 }
00997 if (NULL == agent_version)
00998 {
00999 agent_version = "1.0";
01000 }
01001 /* Initialize libwww core */
01002 DL (HTLibInit (agent_name, agent_version));
01003
01004 /* Turn on TRACE so we can see what is going on */
01005 if (debug)
01006 {
01007 WWWTRACE = SHOW_CORE_TRACE + SHOW_STREAM_TRACE + SHOW_PROTOCOL_TRACE;
01008 }
01009
01010 /* Register the default set of transport protocols */
01011 DL (HTTransportInit ());
01012
01013 /* Register the default set of protocol modules */
01014 DL (HTProtocolInit ());
01015
01016 /* Register the default set of BEFORE and AFTER callback functions */
01017 DL (HTNetInit ());
01018
01019 /* Register the default set of converters */
01020 DL (HTConverterInit (converters));
01021 DL (HTFormat_setConversion (converters));
01022
01023 /* Register the default set of transfer encodings and decoders */
01024 DL (HTEncoderInit (encodings));
01025 DL (HTFormat_setTransferCoding (encodings));
01026
01027 /* Register the default set of MIME header parsers */
01028 DL (HTMIMEInit ());
01029
01030 /* Set up the request and pass it to the Library */
01031 DL (HTRequest_setOutputFormat (request, WWW_SOURCE));
01032 DL (HTRequest_setPreemptive (request, YES));
01033
01034 inet_file_initialized = 1;
01035
01036 /* I don't know how to detect an error so I always return zero. */
01037 return 0;
01038 }
|
|
||||||||||||
|
Definition at line 1042 of file inetfile.cc. 01043 {
01044 HTChunk *chunk = NULL;
01045 char *string = NULL;
01046 INET_FILE *inet_file = NULL;
01047
01048 if (strncmp (url, "http:", 5) && strncmp (url, "ftp:", 4)
01049 && strncmp (url, "https:", 6) && strncmp (url, "file:", 5))
01050 {
01051 inet_file = new INET_FILE ();
01052 inet_file->local_fp = fopen (url, type);
01053 if (NULL == inet_file->local_fp)
01054 {
01055 delete inet_file;
01056 return NULL;
01057 }
01058 return inet_file;
01059 }
01060
01061 if (!inet_file_initialized)
01062 {
01063 inet_file_init (NULL, NULL, 0);
01064 }
01065
01066 if (NULL == url || NULL == request || NULL == converters ||
01067 NULL == encodings)
01068 {
01069 if (NULL != inet_file)
01070 {
01071 delete inet_file;
01072 }
01073 return NULL;
01074 }
01075
01076 char *cwd = DL (HTGetCurrentDirectoryURL ());
01077 char *absolute_url = DL (HTParse (url, cwd, PARSE_ALL));
01078 if (NULL == absolute_url)
01079 {
01080 if (NULL != inet_file)
01081 {
01082 delete inet_file;
01083 }
01084 return NULL;
01085 }
01086 HTAnchor *anchor = DL (HTAnchor_findAddress (absolute_url));
01087 chunk = DL (HTLoadAnchorToChunk (anchor, request));
01088 HT_FREE (absolute_url);
01089 HT_FREE (cwd);
01090
01091 /* If chunk != NULL then we have the data */
01092 if (chunk == NULL)
01093 {
01094 if (NULL != inet_file)
01095 {
01096 delete inet_file;
01097 }
01098 return NULL;
01099 }
01100 string = DL (HTChunk_toCString (chunk));
01101 if (string == NULL)
01102 {
01103 if (NULL != inet_file)
01104 {
01105 delete inet_file;
01106 }
01107 return NULL;
01108 }
01109 if (*string == 0)
01110 {
01111 if (NULL != inet_file)
01112 {
01113 delete inet_file;
01114 }
01115 return NULL;
01116 }
01117 inet_file = new INET_FILE;
01118 if (NULL == inet_file)
01119 {
01120 return NULL;
01121 }
01122 inet_file->buffer = string;
01123 inet_file->current_line = inet_file->buffer;
01124 inet_file->local_fp = NULL;
01125
01126 return inet_file;
01127 }
|
|
||||||||||||||||
|
Definition at line 1131 of file inetfile.cc. 01132 {
01133 unsigned long bytes_to_copy;
01134 char *next_line;
01135 if (NULL == str || NULL == inet_file)
01136 {
01137 return NULL;
01138 }
01139 if (NULL != inet_file->local_fp)
01140 {
01141 return fgets (str, maxlen, inet_file->local_fp);
01142 }
01143 bytes_to_copy = 0;
01144 next_line = strchr (inet_file->current_line, '\n');
01145 if (next_line != NULL)
01146 {
01147 bytes_to_copy =
01148 ((unsigned long) next_line) -
01149 ((unsigned long) inet_file->current_line);
01150 }
01151 else
01152 {
01153 bytes_to_copy = strlen (inet_file->current_line);
01154 }
01155 bytes_to_copy =
01156 ((int) bytes_to_copy) > ((int) maxlen - 1) ? maxlen - 1 : bytes_to_copy;
01157 strncpy (str, inet_file->current_line, bytes_to_copy);
01158 str[bytes_to_copy] = 0;
01159 if (next_line != NULL)
01160 {
01161 inet_file->current_line = next_line + 1;
01162 }
01163 else
01164 {
01165 inet_file->current_line = NULL;
01166 }
01167 return str;
01168 }
|
|
|
Definition at line 1171 of file inetfile.cc. 01172 {
01173 if (NULL != inet_file)
01174 {
01175 if (NULL != inet_file->local_fp)
01176 {
01177 fclose (inet_file->local_fp);
01178 inet_file->local_fp = NULL;
01179 }
01180 else if (NULL != inet_file->buffer)
01181 {
01182 HT_FREE (inet_file->buffer);
01183 inet_file->buffer = NULL;
01184 }
01185 delete inet_file;
01186 }
01187 return 0;
01188 }
|
|
|
Definition at line 1191 of file inetfile.cc. 01192 {
01193 if (NULL == inet_file)
01194 {
01195 return 1;
01196 }
01197 if (NULL != inet_file->local_fp)
01198 {
01199 return feof (inet_file->local_fp);
01200 }
01201 if (NULL == inet_file->current_line || NULL == inet_file->buffer)
01202 {
01203 return 1;
01204 }
01205 return !(*inet_file->current_line);
01206 }
|
|
|
Definition at line 1210 of file inetfile.cc. 01211 {
01212 #ifdef DYNAMICALLY_LOAD_LIBWWW
01213 if (load_libwww_status != 1)
01214 {
01215 return -1;
01216 }
01217 #endif
01218
01219 /* Clean up the request */
01220 DL (HTRequest_delete (request));
01221 DL (HTFormat_deleteAll ());
01222
01223 /* Terminate the Library */
01224 DL (HTLibTerminate ());
01225
01226 request = NULL;
01227 converters = NULL;
01228 encodings = NULL;
01229 inet_file_initialized = 0;
01230
01231 #ifdef DYNAMICALLY_LOAD_LIBWWW
01232 if (NULL != libwww_handle)
01233 {
01234 dlclose (libwww_handle);
01235 libwww_handle = NULL;
01236 }
01237 #endif
01238
01239 return 0;
01240 }
|
|
|
Definition at line 1243 of file inetfile.cc. 01244 {
01245 if (NULL != ifp->local_fp)
01246 {
01247 rewind ((FILE *) ifp->local_fp);
01248 return 0;
01249 }
01250 else
01251 {
01252 ifp->current_line = ifp->buffer;
01253 }
01254 return 0;
01255 }
|
|
|
Definition at line 11 of file inetfile.cc. |
|
|
Definition at line 549 of file inetfile.cc. |
|
|
Definition at line 550 of file inetfile.cc. |
|
|
Definition at line 551 of file inetfile.cc. |
|
|
Definition at line 553 of file inetfile.cc. |
|
|
Definition at line 554 of file inetfile.cc. |
|
|
Definition at line 555 of file inetfile.cc. |
|
|
Definition at line 556 of file inetfile.cc. |
|
|
Definition at line 557 of file inetfile.cc. |
|
|
Definition at line 558 of file inetfile.cc. |
|
|
Definition at line 559 of file inetfile.cc. |
|
|
Definition at line 560 of file inetfile.cc. |
|
|
Definition at line 562 of file inetfile.cc. |
|
|
Definition at line 563 of file inetfile.cc. |
|
|
Definition at line 564 of file inetfile.cc. |
|
|
Definition at line 566 of file inetfile.cc. |
|
|
Definition at line 568 of file inetfile.cc. |
|
|
Definition at line 569 of file inetfile.cc. |
|
|
Definition at line 571 of file inetfile.cc. |
|
|
Definition at line 573 of file inetfile.cc. |
|
|
Definition at line 575 of file inetfile.cc. |
|
|
Definition at line 577 of file inetfile.cc. |
|
|
Definition at line 578 of file inetfile.cc. |
|
|
Definition at line 579 of file inetfile.cc. |
|
|
Definition at line 580 of file inetfile.cc. |
|
|
Definition at line 613 of file inetfile.cc. |
|
|
Definition at line 796 of file inetfile.cc. |
|
|
Definition at line 797 of file inetfile.cc. |
|
|
Definition at line 917 of file inetfile.cc. |
|
|
Definition at line 918 of file inetfile.cc. |
|
|
Definition at line 919 of file inetfile.cc. |
1.2.11.1 written by Dimitri van Heesch,
© 1997-2001