LINUX.ORG.RU

Сообщения necrom

 

Сервер с авторизацией Multicast

В общем возникла такая идея поднять сервер, по раздаче IPTV во внешнею сеть. Есть ли уже готовые решения серверов по раздаче multicast трафика с авторизацией, или же придётся писать самому?

necrom
()

Не понятки с pthread_create

Имеется следующий код

#include "Library.h"
#include "Socket.h"

Database<User> object;


void *cnthread(void*);
void *funthread(void*);

bool comand(string &line,Database<User> &object) {
    Server_comand com;
    int result = com.strpars(line);
    if (result == 1) {
        
        string test = object.countlist();
        cout << "Список пользователей:" << endl;
        cout << test << endl;
        
        return true;
    }
    else if (result == 2) {
        
        int index = object.findNextContains(com.Getnum());
        if (index !=0 ) {
            User& curUser = object.getData(com.Getnum());
            curUser.on_off(false);
            return true;
        }
        cout << "Error not found! User" << endl;
    }
    else if (result == 3) {
        return false;
    }
    else {
        cout << "Error comand not found!" << endl;
        return true;
    }
}

int main(int argc, char * argv[]) {
    ....... 
    int rc1;
    pthread_t threadc;
    //Создаём нить сервера для ввода команд
    if( (rc1=pthread_create( &threadc, NULL, &cnthread,(void*)&object)) ) {
        printf("Thread creation failed: %d\n", rc1);
    }
    while (1) {

        if (recievpack.command() == INSTR_REG) {
            User usr;
            if ( index == 0) {
                pthread_t thread;
                int rc, id_user = recievpack.id_usr();
                if (id_user != 0){
                    usr.recordId(recievpack.id_usr());
                    object.insertData(usr, id_user);
                    
                    usr.Struct_info(client_info);
                    usr.on_off(true);
                    
                    //Создаём нить
                   if( (rc=pthread_create( &thread, NULL, &funthread, (void*)&usr)) ) {
                        printf("Thread creation failed: %d\n", rc);
                    }
                    sr.SendLine(recievpack.MakePack(ACK, 0, usr.recordId()), client_info);
                }
            }
            else{
                //Послать команду exit либо generate
            }
            
        }
        else {
            if ( index != 0) {
                User& getuser = object.getData(index);
                getuser.Current_pack(receive);
                getuser.Package_come(true);
            }
        }
        receive.erase();
    }
    
    return 0;
}
void *cnthread(void* param){
    //Database<User> &list =( Database<User>& )param;
    
    while(1) {
        string pars;
        getline(cin, pars);
        cout << object.countlist() << endl;
        //cout << list.countlist() << endl;
        
        if (comand(pars,object)==false)
            break;
    }
    exit(0);
}
void *funthread(void* param) {
    User *user = (User*)param;
    //int index = *((int*)param);
    
    User& usr = object.getData(user->recordId());
    cout <<  object.countlist() << endl;
	
    ......

Не могу понять почему при использовании функции comand работает, объект класса object становится пустым, как будто новый объект создаётся. Если использовать закоменченную строчку

//Database<User> &list =( Database<User>& )param; 
То он начинает видеть передаваемый объект, но передача идёт криво, собственно вопрос, как сделать чтоб глобальную переменную объекта класса можно было использовать во всех функциях и объект изменялся везде, или как правильно передать в
pthread_create( &threadc, NULL, &cnthread,(void*)&object); 
объект, чтоб в самой функции cnthread можно было получить ссылку на объект. Причём во 2 нити
if( (rc=pthread_create( &thread, NULL, &funthread, (void*)&usr))
он видит его нормально и все данные на месте.

necrom
()

en.pudn.com

Создал продолжение своей темы, потому, что не могу добавить коментарий, пишет -> Ограничение на отправку комментариев: только для зарегистрированных пользователей, score>=50.

Кто может скачать с данного ресурса, буду очень признателен.

http://en.pudn.com/downloads199/sourcecode/windows/console/detail937808_en.html http://en.pudn.com/downloads212/sourcecode/windows/network/detail995560_en.html http://en.pudn.com/downloads78/sourcecode/hack/trojan/detail299054_en.html

Залейте файлы на какой-нить файлообменник.

necrom
()

Кодировка. pudn.com

В общем такой вопрос. Чем можно прочитать эту кодировку?

»¶У­№вБЩЧоґуµДФґВлПВФШЦРОДНшХѕhttp://www.pudn.com ±ѕХѕТФCУпСФєНJavaУпСФЎўЗ¶ИлКЅїЄ·ўЎўЛг·ЁКµПЦОЄЦчЈ¬ФґВлКэБїґпјёК®НтёцЈ¬УР200¶аёц·ЦАаЈ¬єЬ¶а¶јКЗ±ѕХѕ»бФ±µДЛЅјТХдІШЈ¬»ҐБЄНшЙПЖдЛыµШ·ЅКЗХТІ»µЅµД http://www.pudn.com

Есть предположение, что перекодирован китайский utf8 вот только куда, даже предположений нет, может кто сталкивался?

necrom
()

YAPH

Вообщем такой вопрос, установил yaph, начинаю сканирование вот таким методом sudo yaph -sT -P0 -iL out в выходной файл proxies ничего не пишется, хотя выводит в stdout с открытыми портами адреса.

necrom
()

en.pudn.com

Народ у кого-нить есть аккаунт на en.pudn.com нужно скачать пару доков и исходников http://en.pudn.com/detail.asp?id=405469 http://en.pudn.com/detail.asp?id=722108 http://en.pudn.com/detail.asp?id=840020 http://en.pudn.com/detail.asp?id=840018

Если не затруднит, залейте все 1 архивом на deposit или ещё куда, буду очень благодарен. )

necrom
()

RSS подписка на новые темы