Actueel Nieuws

zaterdag 30 oktober 2021

struct group_info init_groups = { .usage = ATOMIC_INIT(2) };

struct group_info *groups_alloc(int gidsetsize){

 struct group_info *group_info;

 int nblocks;

 int i;

 

 nblocks = (gidsetsize + NGROUPS_PER_BLOCK - 1) / NGROUPS_PER_BLOCK;

 /* Make sure we always allocate at least one indirect block pointer */

 nblocks = nblocks ? : 1;

 group_info = kmalloc(sizeof(*group_info) + nblocks*sizeof(gid_t *), GFP_USER);

 if (!group_info)

  return NULL;

 group_info->ngroups = gidsetsize;

 group_info->nblocks = nblocks;

 atomic_set(&group_info->usage, 1);

 

 if (gidsetsize <= NGROUPS_SMALL)

  group_info->blocks[0] = group_info->small_block;

 else {

  for (i = 0; i < nblocks; i++) {

   gid_t *b;

   b = (void *)__get_free_page(GFP_USER);

   if (!b)

    goto out_undo_partial_alloc;

   group_info->blocks[i] = b;

  }

 }

 return group_info;

 

out_undo_partial_alloc:

 while (--i >= 0) {

  free_page((unsigned long)group_info->blocks[i]);

 }

 kfree(group_info);

 return NULL;

}

 

EXPORT_SYMBOL(groups_alloc);

 

void groups_free(struct group_info *group_info)

{

 if (group_info->blocks[0] != group_info->small_block) {

  int i;

  for (i = 0; i < group_info->nblocks; i++)

   free_page((unsigned long)group_info->blocks[i]);

 }

 kfree(group_info);

}

 

EXPORT_SYMBOL(groups_free);

 

/* export the group_info to a user-space array */

static int groups_to_user(gid_t __user *grouplist,

     const struct group_info *group_info)

{

 int i;

 unsigned int count = group_info->ngroups;

 

 for (i = 0; i < group_info->nblocks; i++) {

  unsigned int cp_count = min(NGROUPS_PER_BLOCK, count);

  unsigned int len = cp_count * sizeof(*grouplist);

 

  if (copy_to_user(grouplist, group_info->blocks[i], len))

   return -EFAULT;

 

  grouplist += NGROUPS_PER_BLOCK;

  count -= cp_count;

 }

 return 0;

}

 

/* fill a group_info from a user-space array - it must be allocated already */

static int groups_from_user(struct group_info *group_info,

    gid_t __user *grouplist)

{

 int i;

 unsigned int count = group_info->ngroups;

 

 for (i = 0; i < group_info->nblocks; i++) {

  unsigned int cp_count = min(NGROUPS_PER_BLOCK, count);

  unsigned int len = cp_count * sizeof(*grouplist);

 

  if (copy_from_user(group_info->blocks[i], grouplist, len))

   return -EFAULT;

 

  grouplist += NGROUPS_PER_BLOCK;

  count -= cp_count;

 }

 return 0;

}

 

/* a simple Shell sort */

static void groups_sort(struct group_info *group_info)

{

 int base, max, stride;

 int gidsetsize = group_info->ngroups;

 

 for (stride = 1; stride < gidsetsize; stride = 3 * stride + 1)

  ; /* nothing */

 stride /= 3;

 

 while (stride) {

  max = gidsetsize - stride;

  for (base = 0; base < max; base++) {

   int left = base;

   int right = left + stride;

   gid_t tmp = GROUP_AT(group_info, right);

 

   while (left >= 0 && GROUP_AT(group_info, left) > tmp) {

    GROUP_AT(group_info, right) =

        GROUP_AT(group_info, left);

    right = left;

    left -= stride;

   }

   GROUP_AT(group_info, right) = tmp;

  }

  stride /= 3;

 }

}

 

/* a simple bsearch */

int groups_search(const struct group_info *group_info, gid_t grp)

{

 unsigned int left, right;

 

 if (!group_info)

  return 0;

 

 left = 0;

 right = group_info->ngroups;

 while (left < right) {

  unsigned int mid = left + (right - left)/2;

  if (grp > GROUP_AT(group_info, mid))

   left = mid + 1;

  else if (grp < GROUP_AT(group_info, mid))

   right = mid;

  else

   return 1;

 }

 return 0;

}

 

/**

 * set_groups - Change a group subscription in a set of credentials

 * @new: The newly prepared set of credentials to alter

 * @group_info: The group list to install

 *

 * Validate a group subscription and, if valid, insert it into a set

 * of credentials.

 */

int set_groups(struct cred *new, struct group_info *group_info)

{

 put_group_info(new->group_info);

 groups_sort(group_info);

 get_group_info(group_info);

 new->group_info = group_info;

 return 0;

}

 

EXPORT_SYMBOL(set_groups);

 

/**

 * set_current_groups - Change current's group subscription

 * @group_info: The group list to impose

 *

 * Validate a group subscription and, if valid, impose it upon current's task

 * security record.

 */

int set_current_groups(struct group_info *group_info)

{

 struct cred *new;

 int ret;

 

 new = prepare_creds();

 if (!new)

  return -ENOMEM;

 

 ret = set_groups(new, group_info);

 if (ret < 0) {

  abort_creds(new);

  return ret;

 }

 

 return commit_creds(new);

}

 

EXPORT_SYMBOL(set_current_groups);

 

SYSCALL_DEFINE2(getgroups, int, gidsetsize, gid_t __user *, grouplist)

{

 const struct cred *cred = current_cred();

 int i;

 

 if (gidsetsize < 0)

  return -EINVAL;

 

 /* no need to grab task_lock here; it cannot change */

 i = cred->group_info->ngroups;

 if (gidsetsize) {

  if (i > gidsetsize) {

   i = -EINVAL;

   goto out;

  }

  if (groups_to_user(grouplist, cred->group_info)) {

   i = -EFAULT;

   goto out;

  }

 }

out:

 return i;

}

 

/*

 * SMP: Our groups are copy-on-write. We can set them safely

 * without another task interfering.

 */

 

SYSCALL_DEFINE2(setgroups, int, gidsetsize, gid_t __user *, grouplist)

{

 struct group_info *group_info;

 int retval;

 

 if (!nsown_capable(CAP_SETGID))

  return -EPERM;

 if ((unsigned)gidsetsize > NGROUPS_MAX)

  return -EINVAL;

 

 group_info = groups_alloc(gidsetsize);

 if (!group_info)

  return -ENOMEM;

 retval = groups_from_user(group_info, grouplist);

 if (retval) {

  put_group_info(group_info);

  return retval;

 }

 

 retval = set_current_groups(group_info);

 put_group_info(group_info);

 

 return retval;

}

 

/*

 * Check whether we're fsgid/egid or in the supplemental group..

 */

int in_group_p(gid_t grp)

{

 const struct cred *cred = current_cred();

 int retval = 1;

 

 if (grp != cred->fsgid)

  retval = groups_search(cred->group_info, grp);

 return retval;

}

 

EXPORT_SYMBOL(in_group_p);

 

int in_egroup_p(gid_t grp)

{

 const struct cred *cred = current_cred();

 int retval = 1;

 

 if (grp != cred->egid)

  retval = groups_search(cred->group_info, grp);

 return retval;

}
|


zaterdag 30 oktober 2021

HaCkeD By MrSkorpiON <3 

Don't FucK With Us !

#FuckCorona


zaterdag 2 oktober 2021


donderdag 29 juli 2021

Ook in onze wijk gaan we genieten van de vrije tijd, de zomer en de rust. Maar we blijven er wel voor elkaar in de Hijskraan!


woensdag 7 juli 2021

Sem, Naomi, Jill, Hana, Kaylee, Jim en Adem


dinsdag 13 april 2021

De komende tijd controleren de Bijzondere OpsporingsAmbtenaren (Boa’s) van de gemeente Valkenswaard op loslopende honden en het opruimen van hondenpoep. Hondenpoep op straat of op speelterreintjes zorgt voor veel ergernis. Bovendien is het erg onhygiënisch. De Boa’s controleren in elke wijk en elke kern. Daarnaast controleren ze gericht op basis van meldingen.


woensdag 7 april 2021

Bij de gemeente Valkenswaard bekijken we voortdurend hoe we onze openbare ruimte groener en duurzamer kunnen maken en kunnen aanpassen aan de klimaatverandering. Ook proberen we de biodiversiteit te verhogen. Al dat extra groen willen we goed laten groeien en bloeien en beschermen tegen extreme hitte en grote droogte. Daarom zijn we sinds enkele maanden gaan experimenteren met het maken van Bokashi. 


woensdag 7 april 2021

De gemeente Valkenswaard roept eigenaren van een huis dat ouder is dan 1986 op om hun oude, stalen gasleidingen te vervangen. Sinds 1986 is het verboden om stalen gasleidingen toe te passen in woningbouw. In onze gemeente staan in diverse wijken huizen met een bouwjaar vóór 1986, die nog zijn gebouwd met stalen gasleidingen. Sommige bewoners hebben die leidingen al vervangen. Voor de andere huizen geldt dat de leidingen inmiddels een leeftijd hebben bereikt waarop gaslekkage op de loer ligt.


woensdag 7 april 2021

Alzheimercafé Valkenswaard/Waalre digitaal
Thema: Dementievriendelijke belastinghulp

Vanaf dinsdag 30 maart is er weer een nieuw digitaal Alzheimercafé Valkenswaard/Waalre te bezoeken. Dit keer gaan we in gesprek met Jan van Hal, vrijwilliger Hulpdienst financiën.


zondag 21 maart 2021

Paashaasspeurtocht voor de jongste kinderen en een POGO paastocht voor de oudere kinderen


vrijdag 26 februari 2021

Bewoners uit ’t Gegraaf hebben samen met hobbykok Mattie ‘De Soepactie’ opgezet. Bedoeld voor mensen die wel een steuntje in de rug kunnen gebruiken. Samen maken zij het mogelijk om iedere vrijdag bij 50 personen een voedzame soep te bezorgen.


donderdag 12 november 2020

Uw zorgverzekering vergoedt de meeste noodzakelijke zorgkosten, zoals bezoeken aan de huisarts, medicijnen en een behandeling in het ziekenhuis. Ook thuiszorg en verpleeghuiszorg worden voor een groot deel vergoed. Sommige kosten moet u zelf betalen.


donderdag 12 november 2020

Met de realisatie van de nieuwe N69 verandert de functie van de oude weg tussen Eindhoven, Waalre en Valkenswaard. Binnen het Ontwerplab gaan studenten van de TU/e (master Urbanism) aan de slag met vraagstukken op het gebied van duurzaamheid, wordt gezocht naar alternatieve vervoersoplossingen en ingespeeld op de gevolgen van klimaatverandering, De provincie Noord-Brabant ondersteunt dit onderzoek, net als de samenwerkende gemeenten, omdat het belangrijke input kan leveren voor de toekomstige ontwikkeling van onze Brainport regio.


woensdag 12 augustus 2020

     

 

Locatie: Dorpshuis ’t Perron, Schoolstraat 48, 5591 HM Heeze
Dagen en tijden: De leergang vindt plaats op de maandag.

• Er wordt op locatie rekening gehouden met de corona maatregelen. Uitleg en huisregels worden ter plekke met elkaar besproken. Mocht er onvoorzien wijzigingen komen, spreekt het voor zich dat iedereen op de hoogte wordt gesteld.


woensdag 12 augustus 2020

Aziatische duizendknopen (waaronder Japanse duizendknoop) is een vaste plant, die bloeit in augustus en september en in de winter boven de grond volledig afsterft. Onder de grond weet de plant zich in die periode echter snel uit te breiden. In maart en april schieten de stengels als raketten uit de grond en overwoekeren de omgeving.  Deze planten zijn zeer schadelijk en verspreiden zich gemakkelijk in stedelijk groen, bermen, tuinen en natuurgebieden. Ze tasten de biodiversiteit aan met hun extreme groei, dit leidt onder meer tot negatieve effecten op verkeersveiligheid.


woensdag 22 april 2020

Een luisterend oor voor iedereen.
In deze tijd van het coronavirus staan heel veel mensen op om elkaar te helpen. En daar mogen we met zijn allen enorm trots op zijn! 

Vanuit onze maatschappelijke rol als welzijnsinstelling dragen wij o.a. een steentje bij met ‘Praatje met een Maatje van Cordaadje.’


vrijdag 3 april 2020

Graag hadden wij willen afsluiten met een klapper (qua opbrengst), maar als gevolg van de Corona-crisis dreigt het nu met een sisser af te lopen. Om dat te voorkomen zoeken we op allerlei manieren de publiciteit. Valkenswaard is de laatste werkgroep binnen de Stichting Samen Verder die stopt en daarmee komt een einde aan een begrip binnen de agglomeratie Eindhoven. Iedereen kende Samen Verder en wist waar het voor stond: kleinschalige ontwikkelingsprojecten van sociaaleconomische aard.


maandag 30 maart 2020

Het zijn zware tijden voor iedereen. Ook de cliënten van voedselbank De Boodschappenmand worden zwaar getroffen door de Corona-crisis. Er is een schaarste aan producten die voor ons allen eerste levensbehoefte zijn en ook de vrijwilligers van de voedselbank hebben natuurlijk te maken met de risico’s die het coronavirus met zich meebrengt. Hierdoor zijn zij niet meer in staat deze gezinnen van de broodnodige producten te voorzien.


zondag 22 maart 2020

Het Coronavirus heeft een enorme impact op ons dagelijks leven. Scholen zijn gesloten, horecabedrijven moesten de deuren sluiten en bijeenkomsten zijn afgeblazen. Ook buurthuizen zijn gesloten. Landelijk geldt het advies om sociale contacten zoveel mogelijk te beperken, zeker voor mensen die ouder dan 70 jaar zijn en/of een kwetsbare gezondheid hebben.


woensdag 18 maart 2020

Zoals u inmiddels wel gehoord heeft, heeft het Coronavirus ook Nederland bereikt. Het RIVM adviseert mensen zo veel mogelijk thuis te blijven. De maatregelen zijn erop gericht dat mensen minder contact met elkaar hebben, om verdere verspreiding te voorkomen. Veel openbare plekken hebben hun deuren al gesloten, zo ook de buurthuizen waar wij onze koffie uurtjes houden.


vrijdag 1 november 2019

Volkstuincomplex aan de Kornoeljelaan

Op het volkstuincomplex aan de Kornoeljelaan verhuurt de gemeente Valkenswaard een twintigtal volkstuinen. De gemeente wil graag volkstuincomplexen verzelfstandigen en onderbrengen in een vereniging. Graag brengen wij u op de hoogte van de laatste ontwikkelingen bij het volkstuincomplex aan de Kornoeljelaan.


maandag 29 april 2019

Het Gegraaf is een fijne wijk om te wonen. De bewoners , jong en oud, helpen elkaar waar nodig en zorgen samen voor een prettige en schone omgeving. Het Gegraaf is ook een veilige wijk, waar we omkijken naar elkaar en waar je ’s avonds rustig een wandeling kunt maken. Een wijk waar je je thuis voelt. Een diverse wijk waar mensen die het nodig hebben een steuntje in de rug krijgen van vrijwilligers en soms professionals. Het Gegraaf is een wijk waar kinderen prettig opgroeien, waar ruimte is om te spelen en ze veilig lopend of met de fiets naar school kunnen. Het is een ondernemende wijk waar veel gebeurt, waar we samen Koningsdag vieren, paaseieren zoeken of met de dorpsquiz meedoen. Een wijk waar we ruimte geven aan ieders talent, aan ideeën en er samen aan werken het tot een succes te maken. De focus op doen wat WEL kan!


donderdag 23 augustus 2018

Jij kent de dader, maar de dader kent jou ook? Je hebt informatie over ernstige misdaad, maar er kunnen redenen zijn waarom je niet naar de politie kan of durft. Een lastig dilemma. Hiervoor biedt Meld Misdaad Anoniem een vangnet.


Komende activiteiten

Taalmorgen

dinsdag 7 december 2021
Hijskraan

meer >>


Koffie Inloop: gedichten maken

woensdag 8 december 2021

meer >>


Talentenmarkt

zaterdag 11 december 2021
Hijskraan

meer >>


Bekijk alle activiteiten