Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include <curl/curl.h>
- #include <alloca.h> // some times i think, use alloca is a good idea...
- static char endref[] = "\"'";
- void parse_href(char *p, char *tmp){
- size_t len;
- if(!p)
- return;
- p += 4;
- //descarta todos os espaços até o próximo caracteres
- while(*p == ' ')
- p++;
- //verifica se o próximo caractere é '='
- if(*p != '=')
- return;
- p++;
- //descarta todos os espaços até o próximo caracteres
- while(*p == ' ')
- p++;
- //verifica se o próximo caractere é '"'
- if(*p == '"'){
- p++;
- len = (int)(strstr(p, "\"") - p);
- memcpy(tmp, p, len);
- }
- else if(*p == '\''){
- p++;
- len = (int)(strstr(p, "'") - p);
- memcpy(tmp, p, len);
- }
- }
- void extract_urls(char *inputBuffer, char *domain){
- char *s = NULL;
- char *ptr = inputBuffer;
- char *tmp = ptr;
- size_t slen = strlen(inputBuffer);
- s = malloc(sizeof(char) * slen);
- if(!s){
- fprintf(stderr, "malloc falhou\n");
- exit(1);
- }
- //identifica todos href
- while((tmp = strstr(ptr, "href"))){
- bzero(s, slen);
- parse_href(tmp, s);
- printf("href = %s\n", s);
- ptr = tmp + 4;
- }
- free(tmp);
- }
- int main(void){
- char *response="<a href =\"/test/algo\" > \n<a href = \"/abra/cadabra/site.php\"> \n < href='teste/5003'> \n <form action = 'kaboom.php?remove'> ";
- extract_urls(response,"http://www.vulcan.com.br");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement