Esempio n. 1
0
void VKBase::Authorization()
{
    if(!_curl || getLogin().empty() || getPassword().empty())
        return;

    char errorBuffer[CURL_ERROR_SIZE];
    std::string buffer = "";	// for response
    std::string url = "https://login.vk.com/?act=login&soft=1&utf8=1";
    std::string request = "_origin=https://oauth.vk.com";
    //request += "&ip_h=62371f194b8af424e4";	// it need parse
    request += "&to=aHR0cHM6Ly9vYXV0aC52ay5jb20vYXV0aG9yaXplP2NsaWVudF9pZD00NTYxOTg5JnJlZGlyZWN0X3VyaT1odHRwJTNBJTJGJTJGYXBpLnZrb250YWt0ZS5ydSUyRmJsYW5rLmh0bWwmcmVzcG9uc2VfdHlwZT10b2tlbiZzY29wZT04JnY9NS4yNCZzdGF0ZT0mcmV2b2tlPTEmZGlzcGxheT1tb2JpbGU-"; // redirect url to base64
    request += "&email="+getLogin();
    request += "&pass="+getPassword();

    curl_easy_setopt(_curl, CURLOPT_URL, url.c_str());
    curl_easy_setopt(_curl, CURLOPT_POSTFIELDS, request.c_str());
    curl_easy_setopt(_curl, CURLOPT_WRITEFUNCTION, &VKBase::writer);
    curl_easy_setopt(_curl, CURLOPT_WRITEDATA, &buffer);
    curl_easy_setopt(_curl, CURLOPT_ERRORBUFFER, errorBuffer);
    CURLcode result = curl_easy_perform(_curl);
    curlCheckError(_curl, result, errorBuffer);

    _ip_h = parseIPhFromHeaders(buffer);
    _hash = parseHashFromHeaders(buffer);
}
Esempio n. 2
0
void YahooClient::moveBuddy(YahooUserData *data, const char *grp)
{
    if (getState() != Connected)
        return;
    if (data->Group.ptr == NULL) {
        if ((grp == NULL) || (*grp == 0))
            return;
        set_str(&data->Group.ptr, grp);
        addBuddy(data);
        return;
    }
    if ((grp == NULL) || (*grp == 0)) {
        removeBuddy(data);
        return;
    }
    if (!strcmp(data->Group.ptr, grp))
        return;
    addParam(1, getLogin().utf8());
    addParam(7, data->Login.ptr);
    addParam(65, grp);
    sendPacket(YAHOO_SERVICE_ADDBUDDY);
    addParam(1, getLogin().utf8());
    addParam(7, data->Login.ptr);
    addParam(65, data->Group.ptr ? data->Group.ptr : "");
    sendPacket(YAHOO_SERVICE_REMBUDDY);
    set_str(&data->Group.ptr, grp);
}
Esempio n. 3
0
void YahooClient::sendFile(FileMessage *msg, FileMessage::Iterator &it, YahooUserData *data)
{
    const QString *name = ++it;
    if (name == NULL)
        return;
    QString m = msg->getPlainText();
    addParam(0, getLogin().utf8());
    addParam(5, data->Login.ptr);
    addParam(14, m.local8Bit());
    addParam(27, name->local8Bit());
    addParam(28, number(it.size()).c_str());
    sendPacket(YAHOO_SERVICE_FILETRANSFER);

    string url;
    string cookies;
    url = "http://";
    url += getFTServer();
    url += ":";
    url += number(getFTPort());
    url += "/notifyft";
    cookies = "Y=";
    cookies += getCookieY();
    cookies += "; T=";
    cookies += getCookieT();
}
Esempio n. 4
0
void YahooClient::addBuddy(YahooUserData *data)
{
    if ((getState() != Connected) || (data->Group.ptr == NULL))
        return;
    addParam(1, getLogin().utf8());
    addParam(7, data->Login.ptr);
    addParam(65, data->Group.ptr ? data->Group.ptr : "");
    sendPacket(YAHOO_SERVICE_ADDBUDDY);
}
Esempio n. 5
0
void YahooClient::sendTyping(YahooUserData *data, bool bState)
{
    addParam(5, data->Login.ptr);
    addParam(4, getLogin().utf8());
    addParam(14, " ");
    addParam(13, bState ? "1" : "0");
    addParam(49, "TYPING");
    sendPacket(YAHOO_SERVICE_NOTIFY, 0x16);
}
Esempio n. 6
0
void YahooClient::sendMessage(const QString &msgText, Message *msg, YahooUserData *data)
{
    YahooParser p(msgText);
    addParam(0, getLogin().utf8());
    addParam(1, getLogin().utf8());
    addParam(5, data->Login.ptr);
    addParam(14, p.res.c_str());
    if(p.bUtf)
        addParam(97, "1");
    addParam(63, ";0");
    addParam(64, "0");
    sendPacket(YAHOO_SERVICE_MESSAGE, 0x5A55AA56);
    if ((msg->getFlags() & MESSAGE_NOHISTORY) == 0) {
        msg->setClient(dataName(data).c_str());
        Event e(EventSent, msg);
        e.process();
    }
    Event e(EventMessageSent, msg);
    e.process();
    delete msg;
}
Esempio n. 7
0
bool DatabaseLoginPanel::select(DatabaseLogin const &oLogin, bool bNotify)
{
	int i = find(oLogin);
	if(i == -1)
		return false;

	QModelIndex ind = mModel->index(i, 0);
	mCurrent = i;
	mGUI->mLoginListView->setCurrentIndex(ind);
	DatabaseLogin l = getLogin(i);
	setLogin(l);
	if(bNotify)
		onItemClicked(ind);

	return true;
}
int main() {

/*
    len=snprintf(in,1024,"%s","LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLOL");
    printf("!%s!\n",aes64encrypt(in));
    printf("!%s!\n",aes64decrypt(base64));
    printf("2print:%s\n",aesdecrypt(aesencrypt("LLLLAAALALALALALALALALALALALALALALALALALLAALLALAALLALLALLALALA")));
*/

    printf("len=%d\r\n",strlen(genLink("*****@*****.**","looooooooooooongnicki"))+strlen(getHash()));
    printf("http://site.ru/?Link=%d\n",checkLink(getLink(),getHash()));
    printf("http://site.ru/?Link=%s\n",getMail());
    printf("http://site.ru/?Link=%s\n",getLogin());
/*    len=sprintf(in,"%s","loolag");
    bin2hex(in,out,len);
    printf("out:%s\n",out);
    hex2bin(out,in,strlen(out));
    printf("in:%s\n",in);
    */
	return 0;

}
void SocketController::getValuesFromServer()
{
    connectionLost = false;
    getGeneralConfigData();
    getWifiConfiguration();

    accountSettingsLoginTextInput->setProperty("text", getLogin());

    getPortTrunkSetup();
    getVlanSettings();

    corporationInfoText->setProperty("text", getParamInfo("CorporationInfo"));

    getInfoAboutWifiConnections();
    getPortStatusList();
    getPortStatusCountersList();
    getPortSetupList();
    getPoeSetupList();

    if (connectionLost)
        sendErrorMessage(QT_TR_NOOP("connection_lost"));
}
Esempio n. 10
0
void YahooClient::process_packet()
{
    Params params;
    Params::iterator it;
    for (;;) {
        string key;
        string value;
        if (!m_socket->readBuffer.scan("\xC0\x80", key) || !m_socket->readBuffer.scan("\xC0\x80", value))
            break;
        unsigned key_id = atol(key.c_str());
        params.push_back(PARAM(key_id, value));
        log(L_DEBUG, "Param: %u %s", key_id, value.c_str());
    }
    switch (m_service) {
    case YAHOO_SERVICE_VERIFY:
        if (m_pkt_status != 1) {
            m_reconnect = NO_RECONNECT;
            m_socket->error_state(I18N_NOOP("Yahoo! login lock"));
            return;
        }
        addParam(1, getLogin().utf8());
        sendPacket(YAHOO_SERVICE_AUTH);
        break;
    case YAHOO_SERVICE_AUTH:
        process_auth(params[13], params[94], params[1]);
        break;
    case YAHOO_SERVICE_AUTHRESP:
        m_pkt_status = 0;
        if (params[66])
            m_pkt_status = atol(params[66]);
        switch (m_pkt_status) {
        case YAHOO_LOGIN_OK:
            authOk();
            return;
        case YAHOO_LOGIN_PASSWD:
            m_reconnect = NO_RECONNECT;
            m_socket->error_state(I18N_NOOP("Login failed"), AuthError);
            return;
        case YAHOO_LOGIN_LOCK:
            m_reconnect = NO_RECONNECT;
            m_socket->error_state(I18N_NOOP("Your account has been locked"), AuthError);
            return;
        case YAHOO_LOGIN_DUPL:
            m_reconnect = NO_RECONNECT;
            m_socket->error_state(I18N_NOOP("Your account is being used from another location"));
            return;
        default:
            m_socket->error_state(I18N_NOOP("Login failed"));
        }
        break;
    case YAHOO_SERVICE_LIST:
        authOk();
        loadList(params[87]);
        for (it = params.begin(); it != params.end(); ++it) {
            if ((*it).first == 59) {
                string s = (*it).second;
                string n = getToken(s, ' ');
                const char *p = s.c_str();
                for (; *p; ++p)
                    if (*p != ' ')
                        break;
                string cookie = p;
                s = getToken(cookie, ';');
                if (n == "Y")
                    setCookieY(s.c_str());
                if (n == "T")
                    setCookieT(s.c_str());
            }
        }
        break;
    case YAHOO_SERVICE_LOGOFF:
        if (m_pkt_status == (unsigned long)(-1)) {
            m_reconnect = NO_RECONNECT;
            m_socket->error_state(I18N_NOOP("Your account is being used from another location"));
            return;
        }
    case YAHOO_SERVICE_LOGON:
        if (params[1])
            authOk();
    case YAHOO_SERVICE_USERSTAT:
    case YAHOO_SERVICE_ISAWAY:
    case YAHOO_SERVICE_ISBACK:
    case YAHOO_SERVICE_GAMELOGON:
    case YAHOO_SERVICE_GAMELOGOFF:
    case YAHOO_SERVICE_IDACT:
    case YAHOO_SERVICE_IDDEACT:
        if (params[7] && params[13])
            processStatus(m_service, params[7], params[10], params[19], params[47], params[137]);
        break;
    case YAHOO_SERVICE_IDLE:
    case YAHOO_SERVICE_MAILSTAT:
    case YAHOO_SERVICE_CHATINVITE:
    case YAHOO_SERVICE_CALENDAR:
    case YAHOO_SERVICE_NEWPERSONALMAIL:
    case YAHOO_SERVICE_ADDIDENT:
    case YAHOO_SERVICE_ADDIGNORE:
    case YAHOO_SERVICE_PING:
    case YAHOO_SERVICE_GOTGROUPRENAME:
    case YAHOO_SERVICE_GROUPRENAME:
    case YAHOO_SERVICE_PASSTHROUGH2:
    case YAHOO_SERVICE_CHATLOGON:
    case YAHOO_SERVICE_CHATLOGOFF:
    case YAHOO_SERVICE_CHATMSG:
    case YAHOO_SERVICE_REJECTCONTACT:
    case YAHOO_SERVICE_PEERTOPEER:
        break;
    case YAHOO_SERVICE_MESSAGE:
        if (params[4] && params[14])
            process_message(params[4], params[14], params[97]);
        break;
    case YAHOO_SERVICE_NOTIFY:
        if (params[4] && params[49])
            notify(params[4], params[49], params[13]);
        break;
    case YAHOO_SERVICE_NEWCONTACT:
        if (params[1]) {
            contact_added(params[3], params[14]);
            return;
        }
        if (params[7]) {
            processStatus(m_service, params[7], params[10], params[14], params[47], params[137]);
            return;
        }
        if (m_pkt_status == 7)
            contact_rejected(params[3], params[14]);
        break;
    case YAHOO_SERVICE_P2PFILEXFER:
        if ((params[49] == NULL) || strcmp(params[49], "FILEXFER")) {
            log(L_WARN, "Unhandled p2p type %s", params[49]);
            break;
        }
    case YAHOO_SERVICE_FILETRANSFER:
        if (params[4] && params[27] && params[28] && params[14] && params[20])
            process_file(params[4], params[27], params[28], params[14], params[20]);
        break;
    default:
        log(L_WARN, "Unknown service %X", m_service);
    }
}
Esempio n. 11
0
void DatabaseLoginPanel::onSave(void)
{
	DatabaseLogin login = getLogin();
	addItem(login, true);
}
Esempio n. 12
0
bool RVPFile::msnftp() {
	bool error = false;
	while (!completed) {
		char *params = "";
		char *line = connection->recvLine();
		if (line != NULL && strlen(line) > 2) {
			if (strlen(line) > 3) {
				params = line + 4;
			}
			int command = (int)line[0] | (((int)line[1]) << 8) | (((int)line[2]) << 16);
			command = (command&0x00FFFFFF)|0x20000000;
			switch (command) {
				case ' REV':
					{
						char protocol[7];
						bool msnftp = false;
						while (params != NULL && sscanf(params, "%6s", protocol) >= 1) {
							if (strcmp(protocol, "MSNFTP") == 0) {
								msnftp = true;
								break;
							}
							params = strstr(params, " ");
							if (params != NULL) params ++;
						}
						if (getMode() == RVPFile::MODE_SEND) {
							connection->send("VER MSNFTP\r\n");
						} else {
							if (msnftp) {
								connection->sendText("USR %s %s\r\n",getLogin(),getAuthCookie());
							} else {
								/* error */
							}
						}
					}
					break;
				case ' RSU':
					{
						char email[130], cookie[14];
						if (sscanf(params,"%129s %13s",email, cookie) >= 2) {
							if (!strcmp(email, getLogin()) && !strcmp(cookie, getAuthCookie())) {
								connection->sendText("FIL %i\r\n", getSize());
							} else {
								/* error */
							}
							break;
						}
					}
					break;
				case ' LIF':
					{
						char filesize[ 30 ];
						if ( sscanf( params, "%s", filesize ) >= 1 ) {
							setSize(atol(filesize));
							connection->send("TFR\r\n");
							/* ack initializing */
							if (listener != NULL) {
								listener->onFileProgress(this, RVPFileListener::PROGRESS_INITIALIZING, 0);
							}
							/* receive data */
							int fileId = _open(getPath(), _O_BINARY|_O_WRONLY|_O_CREAT|_O_TRUNC, _S_IREAD|_S_IWRITE);
							error = false;
							if (fileId >= 0) {
								int bytesToReceive = getSize();
								while (!error && bytesToReceive > 0) {
									char buffer[2048];
									int header = 0;
									if (connection->recv((char *)&header, 3)) {
										int blockSize = header >> 8;
										while (!error && blockSize > 0) {
											error = true;
											int readSize = min(2048, blockSize);
											if (connection->recv(buffer, readSize)) {
												blockSize -= readSize;
												bytesToReceive -= readSize;
												if (_write(fileId, buffer, readSize) == readSize) {
													error = false;
												}
											}
										}
										if (listener != NULL) {
											listener->onFileProgress(this, RVPFileListener::PROGRESS_PROGRESS, getSize() - bytesToReceive);
										}
										if (header&0xFF != 0) {
											break;
										}
									} else {
										error = true;
									}
								}
								_close(fileId);
							} else {
								error = true;
							}
							completed = true;
						}
Esempio n. 13
0
bool Settings::isHavingAuthData()
{
    return ((getLogin()!="unknown")&&(getPassword()!="unknown"));
}