LINUX.ORG.RU

Сообщения u0atgKIRznY5

 

не могу отключить tmpfs

Как известно tmpfs использует оперативную память. Например есть установочный файл, которые весит больше, чем установлено по умолчанию в tmpfs, что мне теперь remount делать чтоли, чтобы хватило для файла да и еще схавать еще больше оперативы только на то, чтобы быстрее к файлу обратиться, когда скорость не имеет значения, особенно при установке. Пробывал так

systemctl mask tmp.mount
Перезагружался, не выходит. Пробывал так
systemctl unmask tmp.mount
systemctl disable tmp.mount
Перезагружался, не выходит. Есть запись в mtab, но закоментировать tmpfs /tmp не смог.

Как отключить, чтобы в df -h не появлялся? Ну я имею ввиду отключить, а не скрыть от df -h.

 ,

u0atgKIRznY5
()

распарсить json данные

Есть данные в формате json. Нужно использовать либо си библиотеку, например json,json-c,json-glib. или c++ библиотеку jsoncpp. Нужно получить нужные данные из json данных. Как это сделать?

 ,

u0atgKIRznY5
()

Почему программа выключается?

теперь программа работает.

#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
#include <netinet/in.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <curses.h>
#include <signal.h>

int socket_goodgame;
struct sockaddr_in parameter_of_server;
struct hostent *info_of_server;
char request [ 255 ];
char *status;
char *viewers;
char *users_in_chat;
char *games;

void configure_parameters_of_server ( )
{
	parameter_of_server.sin_family = PF_INET;
	memcpy ( &parameter_of_server.sin_addr, info_of_server->h_addr_list[0], 4 );
//	parameter_of_server.sin_addr.s_addr = *((unsigned long*) info_of_server->h_addr_list[0]);
	parameter_of_server.sin_port = htons ( 80 );
}
void connect_to_goodgame ( )
{
	info_of_server = gethostbyname ( "goodgame.ru" );

	configure_parameters_of_server ( );

	socket_goodgame = socket ( PF_INET, SOCK_STREAM, 0 );

	int ret;
	ret = connect ( 
			socket_goodgame, 
			( struct sockaddr *) &parameter_of_server, 
			sizeof ( struct sockaddr )
			);
	if ( ret == -1 ) {
		perror ( "connect" );
	}
}

void end_connection ( )
{
	close ( socket_goodgame );
}

void build_subscribes ( )
{
	memset ( request, 0, 255 );
	sprintf ( request,
			"GET http://goodgame.ru/api/getchannelstatus?id=xener HTTP/1.0\n"
			"User-Agent: gd/0.1 (naidv88@gmail.com)\n"
			"Accept: */*\n\n" );
}

char *find_argument ( char *value, char *buffer )
{

	char *position_in_buffer = buffer;
	for ( ; position_in_buffer != NULL; position_in_buffer++ ) {
		if ( !strncmp ( value, position_in_buffer, strlen ( value ) ) ) {
			position_in_buffer += strlen ( value ) + 1;

			char *length_argument = position_in_buffer;
			for ( int i = 0; ; i++ ) {
				if ( *length_argument == '<' ) {
					char *argument = calloc ( i + 1, 1 );
					char *position_in_argument = argument;
					for ( ; i > 0; i-- ) {
						*position_in_argument = *position_in_buffer;
						position_in_argument++;
						position_in_buffer++;
					}

					return argument;
				}
				length_argument++;
			}
		}
	}

	return NULL;
}

int any_argument_is_null ( )
{
	if ( games == NULL || status == NULL || viewers == NULL || users_in_chat == NULL ) {
		if ( games ) free ( games );
		if ( status ) free ( status );
		if ( viewers ) free ( viewers );
		if ( users_in_chat ) free ( users_in_chat );
		return 1;
	} 
	return 0;
}

void print_arguments ( )
{
	clear ( );
	mvprintw ( 0, 1, "gd v. 0.1" );
	mvhline ( 1, 0, '_', 80 );
	mvprintw ( 2, 1, "game: %s", games );
	mvprintw ( 3, 1, "status: %s", status );
	mvprintw ( 4, 1, "viewers: %s", viewers );
	mvprintw ( 5, 1, "users: %s", users_in_chat );
	mvaddch ( 6, 0, ' ' );
	refresh ( );

	free ( games );
	free ( status );
	free ( viewers );
	free ( users_in_chat );
}

void get_arguments ( char *buffer )
{
	status = find_argument ( "status", buffer );
	viewers = find_argument ( "viewers", buffer );
	users_in_chat = find_argument ( "usersinchat", buffer );
	games = find_argument ( "games", buffer );
}
void parse_answer_from_server ( char *buffer )
{
	get_arguments ( buffer );

	if ( any_argument_is_null ( ) ) {
		return;
	}

	print_arguments ( );


}

void get_information ( )
{

	if ( send ( socket_goodgame, request, strlen ( request ), MSG_NOSIGNAL ) == -1 ) {
		perror ( "send" );
	}

	char buf[4096];

	int ret;
	ret = read ( socket_goodgame, buf, 4096 );
	if ( ret == 0 ) return;
	parse_answer_from_server ( &buf[0] );

}

void curses_init ( )
{
	initscr ( );
	cbreak ( );
	noecho ( );
	keypad ( stdscr, FALSE );

}
void end_program ( int sig )
{
	endwin ( );
	exit ( EXIT_SUCCESS );
}
void signals_init ( )
{
	signal ( SIGINT, end_program );
}

int main ( int argc, char *argv[] )
{
	signals_init ( );
	curses_init ( );
	build_subscribes ( );

	while ( 1 ) {
		connect_to_goodgame ( );
		get_information ( );
		end_connection ( );
		sleep ( 1 );
	}

}


 

u0atgKIRznY5
()

Как же хочется что нибудь написать

Иногда такое сильное желание есть что нибудь написать, вот как сейчас, да только ничего не могу придумать. Иногда что-то придумываю, но из-за сложности и нехватки знаний не берусь за это. А написать хочется что нибудь нужное, тем, чтобы например я пользовался и еще кто нибудь. Есть ли у кого нибудь идеи того, что можно сделать ( написать ), или мне просто наслаждаться этим состоянием ( желанием что нибудь написать )?

Перемещено tailgunner из development

 , ,

u0atgKIRznY5
()

где находится su и pam исходники?

Тема и есть вопрос.

 

u0atgKIRznY5
()

как в один sh файл помещают данные

Например есть sh файл, когда его запускаю появляется окно установки, оно в свою очередь устанавливает все остальное. Как эти данные помещают в файл?

 

u0atgKIRznY5
()

обнаружены подозрительная сетевая активность

Недавно написал программу, которая показывает соединения программы и вот что выявлено.

192.168.1.5:56170 88.198.114.198:80 uid: 10042
192.168.1.5:40493 103.235.47.125:80 uid: 10042
192.168.1.5:40495 103.235.47.125:80 uid: 10042
192.168.1.5:48492 93.158.134.207:443 uid: 10042
192.168.1.5:43155 54.71.182.124:80 uid: 10042
192.168.1.5:36215 2.23.152.185:80 uid: 10042
192.168.1.5:33650 212.32.249.98:80 uid: 10042
192.168.1.5:44809 52.45.101.171:80 uid: 10042
192.168.1.5:44657 35.158.151.148:80 uid: 10042
192.168.1.5:44656 35.158.151.148:80 uid: 10042
192.168.1.5:44449 212.224.118.213:80 uid: 10042
192.168.1.5:40496 103.235.47.125:80 uid: 10042
192.168.1.5:47806 52.17.70.104:80 uid: 10042
192.168.1.5:44807 52.45.101.171:80 uid: 10042
192.168.1.5:44658 35.158.151.148:80 uid: 10042
192.168.1.5:56169 88.198.114.198:80 uid: 10042
192.168.1.5:49162 2.23.158.86:80 uid: 10042
192.168.1.5:41094 52.40.87.97:80 uid: 10042
192.168.1.5:40494 103.235.47.125:80 uid: 10042
192.168.1.5:47805 52.17.70.104:80 uid: 10042
192.168.1.5:44808 52.45.101.171:80 uid: 10042
192.168.1.5:54626 35.190.77.108:80 uid: 10042
192.168.1.5:48495 93.158.134.207:443 uid: 10042
com.adups.fota
На сайте xakep.ru

По данным Kryptowire вся вредоносная функциональность сконцентрирована внутри двух системных приложений, отключить или удалить которые пользователь попросту не может: com.adups.fota.sysoper и com.adups.fota.

Вот что еще написано

В FOTA, по сути, встроен бэкдор, который постоянно держит связь с серверами китайской компании.

Вот функционал

  • каждые 72 часа отправлять все SMS-сообщения с устройства на сервер Adups;
  • каждые 72 часа отправлять содержимое журнала звонков на сервер Adups;
  • собирать личные данные, позволяющие установить личность пользователя, и каждые 24 часа отправлять их на сервер Adups;
  • собирать информацию о IMSI и IMEI, геолокационные данные и список установленных приложений;
  • удалять или обновлять приложения;
  • скачивать и устанавливать новые приложения без ведома пользователя;
  • обновлять прошивку устройства;
  • удаленно выполнять произвольные команды и повышать свои привилегии на устройстве.

 ,

u0atgKIRznY5
()

В каждом процессе одни и те же ip адреса и порты

Пишу программу чтобы посмотреть у какой программы какие порты открыты. Я щас только заметил что в каждом процессе одни и те же ip адреса и порты написаны. В общем даже в vim процессе в файле tcp, написаны адреса и порты, которые от firefox установлены.

 

u0atgKIRznY5
()

Не отображает список

выложил код на github. Занимался по книжке «android программирование для профессионалов», и вот закончил 8 главу, а список не отображается. Так как бы все по книжке сделано. Если нужен logcat то вот.

2-13 07:55:02.948 5729-5729/? I/art: Late-enabling -Xcheck:jni
12-13 07:55:04.589 5729-5729/com.example.xverizex.criminalintent I/InstantRun: starting instant run server: is main process
12-13 07:55:04.910 5729-5747/com.example.xverizex.criminalintent W/art: Suspending all threads took: 5.859ms
12-13 07:55:04.910 5729-5747/com.example.xverizex.criminalintent I/art: Background sticky concurrent mark sweep GC freed 1862(130KB) AllocSpace objects, 0(0B) LOS objects, 8% free, 558KB/607KB, paused 7.019ms total 241.790ms
12-13 07:55:05.150 5729-5729/com.example.xverizex.criminalintent W/art: Verification of android.support.v4.app.FragmentManagerImpl$AnimationOrAnimator android.support.v4.app.FragmentManagerImpl.loadAnimation(android.support.v4.app.Fragment, int, boolean, int) took 113.037ms
12-13 07:55:05.180 5729-5747/com.example.xverizex.criminalintent W/art: Suspending all threads took: 251.220ms
12-13 07:55:05.190 5729-5747/com.example.xverizex.criminalintent I/art: Background partial concurrent mark sweep GC freed 158(32KB) AllocSpace objects, 0(0B) LOS objects, 45% free, 612KB/1124KB, paused 252.532ms total 270.904ms
12-13 07:55:05.320 5729-5729/com.example.xverizex.criminalintent V/Activity: calling onCraete for activity: com.example.xverizex.criminalintent
12-13 07:55:05.500 5729-5729/com.example.xverizex.criminalintent W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
12-13 07:55:06.131 5729-5747/com.example.xverizex.criminalintent I/art: Background sticky concurrent mark sweep GC freed 1240(178KB) AllocSpace objects, 0(0B) LOS objects, 19% free, 1209KB/1510KB, paused 10.498ms total 26.275ms
12-13 07:55:06.161 5729-5729/com.example.xverizex.criminalintent V/Activity: calling onResume for activity: com.example.xverizex.criminalintent
12-13 07:55:06.201 5729-5782/com.example.xverizex.criminalintent D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: false
12-13 07:55:06.221 5729-5729/com.example.xverizex.criminalintent D/Atlas: Validating map...
12-13 07:55:06.341 5729-5782/com.example.xverizex.criminalintent I/OpenGLRenderer: Initialized EGL, version 1.4
12-13 07:55:06.341 5729-5782/com.example.xverizex.criminalintent D/OpenGLRenderer: Enabling debug mode 0
12-13 07:55:07.022 5729-5747/com.example.xverizex.criminalintent W/art: Suspending all threads took: 138.275ms
12-13 07:55:07.082 5729-5747/com.example.xverizex.criminalintent I/art: Background sticky concurrent mark sweep GC freed 450(105KB) AllocSpace objects, 0(0B) LOS objects, 14% free, 1293KB/1510KB, paused 199.279ms total 646.057ms
12-13 07:55:07.092 5729-5729/com.example.xverizex.criminalintent W/art: Before Android 4.1, method int android.support.v7.widget.ListViewCompat.lookForSelectablePosition(int, boolean) would have incorrectly overridden the package-private method in android.widget.ListView
12-13 07:55:07.232 5729-5729/com.example.xverizex.criminalintent W/art: Verification of void android.support.v7.view.SupportMenuInflater.inflate(int, android.view.Menu) took 106.353ms
12-13 07:55:07.232 5729-5747/com.example.xverizex.criminalintent W/art: Suspending all threads took: 107.482ms
12-13 07:55:07.232 5729-5747/com.example.xverizex.criminalintent I/art: Background partial concurrent mark sweep GC freed 179(23KB) AllocSpace objects, 0(0B) LOS objects, 27% free, 1321KB/1833KB, paused 108.917ms total 152.069ms
12-13 07:55:07.242 5729-5729/com.example.xverizex.criminalintent I/Choreographer: Skipped 44 frames!  The application may be doing too much work on its main thread.

 ,

u0atgKIRznY5
()

Несколько надписей и значков в элементе списка

А можно ли так в qt сделать, чтобы в списке было несколько надписей и значков? И как это сделать?

Вот пример, где несколько элементов в одном элементе списка. https://play.google.com/store/apps/details?id=com.tester.wpswpatester

 ,

u0atgKIRznY5
()

несколько c, один h

Есть несколько *.c файлов, которые включают один и тот же *.h. При компиляции пишет что множественное определение переменной, но почему?

Вот что в *.h

#ifndef HEADER_H
#define HEADER_H
/* здесь разные обьявления */
#endif

 

u0atgKIRznY5
()

а что так нельзя?

что-то подумал об этом, а ведь этот пример об утечки памяти.

char *df ( )
{
  char *f = ( char * ) malloc ( 10 );
  memset ( f, 0, 10 );
  strncpy ( f, "aaa", 3 );
  return f;
}

int main ()
{
  printf ( "%s\n", df() );
}

 

u0atgKIRznY5
()

размер структуры

struct f
{
  unsigned long long a;
  unsigned short b;
  unsigned short c;
  unsigned char d;
  unsigned char e;
};

эта структура занимает 16 байт, а мне бы хотелось получить 14 байт. Я могу это как нибудь сделать?

 

u0atgKIRznY5
()

освобождение памяти

освобождаю массивы структур таким образом, появляется double free or corruption

struct list *d;
struct list *pt;
for ( int h = 0; h < height; h++ )
{
  for ( int w = 0; w < width; w++ )
  {
     pt = &total_list [ h ] [ w ];
     while ( pt )
     {
        d = pt;
        pt = pt->next;
        free ( d );
     }
  }
}

Перемещено tailgunner из development

 

u0atgKIRznY5
()

про escapists

Сначала нормально работала игра. Потом начались подтормаживания на каждом игровом часе. Также начались тормоза при сохранении, которое выполняется автоматически если успеть лечь спать ночью. И тормозит в меню, нужно ждать какое то время. В какой-то момент при сохранение игра выключилась. Теперь хочу включить, она в меню останавливается, грузится что-то, много памяти выделяется, а потом игра выключается. Может кто сталкивался?

 

u0atgKIRznY5
()

а можно ли так?

class object
{
  public:
    object ( );
    virtual void update ();
    void loop ();
};
object::object ()
{

}

void object::update ()
{
  printf ("object\n");
}

void object::loop ()
{
  while ( 1 )
  {
    sleep ( 1 );
    update ();
  }
}
class pro : public object
{ 
  void update ();
};

void pro::update ()
{
  printf ("pro\n" );
}

Можно ли создать pro и чтобы он писал слово «pro»?

 

u0atgKIRznY5
()

в чём ошибка? munmap_chunk

#include <list>
class bar
{
  public:
    int a;
};
class foo
{
  public:
  std::list<bar> *l;

  foo ()
  {
    l = new std::list<bar>[10];
  }
  ~foo()
  {
    if ( l ) delete l;
  }
};

int main ()
{
  foo f;
}

 

u0atgKIRznY5
()

gluLookAt правильный ракурс

Какие параметры вписать в gluLookAt (), чтобы можно было увидеть точку, начинающуюся на glVertex3f ( 0.0, 0.0, 0.0 );?

 

u0atgKIRznY5
()

Программа подвисает

Может кому интересно. У меня программа виснет. Не могу понять из-за чего. Может кто чего дельного подскажет.

Вот ссылка на github

 , ,

u0atgKIRznY5
()

virtual void push ( T ) = 0;

Прочитал,

Обозначение =0 показывает, что для виртуальной функции не требуется никакого определения.

Это что значит, что можно и не переопределять функцию?

 

u0atgKIRznY5
()

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