예제 #1
0
파일: parser.c 프로젝트: fourks/goaccess
/* process referer */
static void
process_referrers (char *referrer, char *site)
{
  char *ref;

  if (referrer == NULL)
    return;

  if (site != NULL && *site != '\0')
    process_generic_data (ht_referring_sites, site);
  process_keyphrases (referrer);

  ref = decode_url (referrer);
  if (ref == NULL || *ref == '\0')
    return;

  process_generic_data (ht_referrers, ref);
  free (ref);
}
예제 #2
0
/* process referer */
static void
process_referrers (char *referrer)
{
  char *ref;
  char url[REF_SITE_LEN] = "";

  if (referrer == NULL)
    return;

  /* extract the host part, i.e., www.foo.com */
  if (sscanf (referrer, "%*[^/]%*[/]%[^/]", url) == 1)
    process_generic_data (ht_referring_sites, url);
  process_keyphrases (referrer);

  ref = decode_url (referrer);
  if (ref == NULL || *ref == '\0')
    return;

  process_generic_data (ht_referrers, ref);
  free (ref);
}