All pastes #943746 Raw Edit

Zeug

public text v1 · immutable
·published 2008-03-15 15:39 UTC
rendered paste body
void e_mysql_get_vhost(void){
        MYSQL_ROW row;
        MYSQL_RES *mysql_result;

        char *select = "SELECT content, name, serverid FROM %s WHERE typ='vhost' AND serverid='%s'";
        char *query;

        query = (char *)malloc(strlen(select)+strlen(E_MYSQL_TABLE)+strlen(E_MYSQL_SERVERID)+1);
        sprintf(query, select, E_MYSQL_TABLE, E_MYSQL_SERVERID);

        mysql_real_query(mysql, query, strlen(query));
        e_mysql_check_error("5");
        mysql_result = mysql_store_result(mysql);
        e_mysql_check_error("6");

        while(((row = mysql_fetch_row(mysql_result)) != 0)){
                char *filename = e_gen_filename(row[2], row[1], E_VHOST_POSTFIX);
                if(e_gen_files(filename, row[0]) == 1){
                        e_create_syncfile(filename);
                }
                free(filename);
        }
        mysql_free_result(mysql_result);
        free(query);
}
int e_create_syncfile(char *fromfile){
        if(E_KEEP_SYNC == 1){
                strcat(fromfile, E_SYNC_POSTFIX);
                if(e_check_path(E_CACHE_DIR) == 1){
                        FILE *syncfile = fopen(fromfile, "w");
                        if(syncfile == NULL){
                                e_error_handle_file(errno, fromfile);
                                return -1;
                        } else {
                                //char content[] = "SYNC";
                                if(fwrite("SYNC", 5, 1, syncfile) != 1){
                                        e_error_handle_file(errno, fromfile);
                                        return -1;
                                }
                                printf("SYNC geschrieben %s\n", fromfile);
                                fclose(syncfile);
                                return 1;
                        }
                } else {
                        return -1;
                }
        }
}

int e_gen_files(char *filename, char *content){
        //printf("INFO : %s\n", filename);
        //FILE *cfgfile;
        if(e_check_path(E_CACHE_DIR) == 1){
                FILE *cfgfile = fopen(filename, "w");
                if(cfgfile == NULL){
                        e_error_handle_file(errno, filename);
                        return -1;
                } else {
                        strcat(content, "\n");
                        if(fwrite(content, sizeof(char)*strlen(content), 1, cfgfile) != 1){
                                e_error_handle_file(errno, filename);
                                return -1;
                        } else {
                                return 1;
                        }
                        fclose(cfgfile);
                }
        } else {
                return -1;
        }
}