Всё пишется на С.
Приведу для начала код:
/**************file1.c***************/
struct netfw_ip_rule{
struct netfw_ip_rule *prev;
struct netfw_ip_rule *next;
char *table;
char *ip;
};
static struct netfw_ip_rule *from;
int netfw_mod_from(int action, char *table_name, char *arg, struct sk_buff **skb)
{
switch(action)
{
case NETFW_ADD_RULE:
{
if(from)/* if (table_name)*//*from->table = table_name*/ printk("from is visible in int netfw_mod_from(...)\n");
}
break;
case NETFW_DEL_RULE:
break;
case NETFW_CHK_RULE:
break;
default:
break;
}
return 0;
}
...
void netfw_init_base_mod(void)
{
...
from = kmalloc(sizeof(struct netfw_ip_rule),GFP_DMA);
from->next = from->prev = from;
if(from) printk("from is visible in void netfw_init_base_mod(void)\n");
...
}
/************************************/
oid netfw_init_base_mod(void) вызывается из одного файла а
int netfw_mod_from(...) вызывается из другого сишника.
Так вот а трабла в том, что переменная from инициализированная в
последней функции и объявленная как глобальная переменная не видна из
первой функции. А определил это как видно из мессаги которая выводится
из второй функции и не выводится из первой.
Т.е. в логе только мессага
Jul 9 11:24:51 dell kernel: from is visible in void netfw_init_base_mod(void)
и всё а первой функции нет.
Может кто пояснит почему переменная обьявленная как глобальная, видна
только в фуенкции где она инициализирована?
Пы.Сы. Прбовал обьявить переменную в хидере (т.к. идеи уже кончились) но это
не помогло :(
Заранее спасибо!!!
Ответ на:
комментарий
от anonymous


Ответ на:
комментарий
от stalcker


Ответ на:
комментарий
от merlinse

Ответ на:
комментарий
от stalcker

Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от shumer

Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от shumer

Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от execve

Ответ на:
комментарий
от cyclon

Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от Vinick

Ответ на:
комментарий
от cyclon

Ответ на:
комментарий
от cyclon

Ответ на:
комментарий
от cyclon
Ответ на:
комментарий
от shumer
Ответ на:
комментарий
от anonymous

Ответ на:
комментарий
от cyclon

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Теряется *char. (2005)
- Форум Переслать полученный пакет (2012)
- Форум Глюк с инициализацией глобальных переменных (C/mingw) (2024)
- Форум Выделение памяти в модуле. (2005)
- Форум «Ненормальное» сравнение переменной shn с единицей. (2010)
- Форум Чтение заголовка ФС USB в загружаемом модуле ядра (2025)
- Форум разбираюсь с классами непонятные ошибки при компиляции объясните в чем я неправ??? (2010)
- Форум проблема с обработкой прерывания (2006)
- Форум Что-то конкурсов у нас давно не было... где моя K&R ! (2016)
- Форум Взаимодействие userspace и kernel-space через netliink сокеты (2010)