This is the mail archive of the libc-hacker@sourceware.cygnus.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

fgetgrent broken with large groups



The appended test program allocates all memory with large groups - and 
fails.  One problem seems to be (debug just fgetgrent) that fgetgrent
tries to read again from the stream and doesn't move the stream back.

Andreas

P.S.: Test program
#include <grp.h>
#include <stdio.h>

int
main (void)
{
  struct group *g;
  FILE *f;

  f = fopen("large-group","r");

  while(1)
    {
      g = fgetgrent(f);
      if (!g)
	break;
      printf("%s: %d\n",g->gr_name,g->gr_gid);
    }
  return 0;
}

File large-group:
root:x:0:root
large:x:999:us000,us001,us002,us003,us004,us005,us006,us007,us008,us009,us010,us011,us012,us013,us014,us015,us016,us017,us018,us019,us020,us021,us022,us023,us024,us025,us026,us027,us028,us029,us030,us031,us032,us033,us034,us035,us036,us037,us038,us039,us040,us041,us042,us043,us044,us045,us046,us047,us048,us049,us050,us051,us052,us053,us054,us055,us056,us057,us058,us059,us060,us061,us062,us063,us064,us065,us066,us067,us068,us069,us070,us071,us072,us073,us074,us075,us076,us077,us078,us079,us080,us081,us082,us083,us084,us085,us086,us087,us088,us089,us090,us091,us092,us093,us094,us095,us096,us097,us098,us099,us100,us101,us102,us103,us104,us105,us106,us107,us108,us109,us110,us111,us112,us113,us114,us115,us116,us117,us118,us119,us120,us121,us122,us123,us124,us125,us126,us127,us128,us129,us130,us131,us132,us133,us134,us135,us136,us137,us138,us139,us140,us141,us142,us143,us144,us145,us146,us147,us148,us149,us150,us151,us152,us153,us154,us155,us156,us157,us158,us159,us160,us161,us162,u!
s163,us164,us165,us166,us167,us168,us169,us170,us171,us172,us173,us174,us175,us176,us177,us178,us179,us180,us181,us182,us183,us184,us185,us186,us187,us188,us189,us190,us191,us192,us193,us194,us195,us196,us197,us198,us199,us200,us201,us202,us203,us204,us205,us206,us207,us208,us209,us210,us211,us212,us213,us214,us215,us216,us217,us218,us219,us220,us221,us222,us223,us224,us225,us226,us227,us228,us229,us230,us231,us232,us233,us234,us235,us236,us237,us238,us239,us240,us241,us242,us243,us244,us245,us246,us247,us248,us249,us250,us251,us252,us253,us254,us255,us256,us257,us258,us259,us260,us261,us262,us263,us264,us265,us266,us267,us268,us269,us270,us271,us272,us273,us274,us275,us276,us277,us278,us279,us280,us281,us282,us283,us284,us285,us286,us287,us288,us289,us290,us291,us292,us293,us294,us295,us296,us297,us298,us299,us300,us301,us302,us303,us304,us305,us306,us307,us308,us309,us310,us311,us312,us313,us314,us315,us316,us317,us318,us319,us320,us321,us322,us323,us324,us325,us326,us327,us!
328,us329,us330,us331,us332,us333,us334,us335,us336,us337,us338,us339,us340,us341,us342,us343,us344,us345,us346,us347,us348,us349,us350,us351,us352,us353,us354,us355,us356,us357,us358,us359,us360,us361,us362,us363,us364,us365,us366,us367,us368,us369,us370,us371,us372,us373,us374,us375,us376,us377,us378,us379,us380,us381,us382,us383,us384,us385,us386,us387,us388,us389,us390,us391,us392,us393,us394,us395,us396,us397,us398,us399,us400,us401,us402,us403,us404,us405,us406,us407,us408,us409,us410,us411,us412,us413,us414,us415,us416,us417,us418,us419,us420,us421,us422,us423,us424,us425,us426,us427,us428,us429,us430,us431,us432,us433,us434,us435,us436,us437,us438,us439,us440,us441,us442,us443,us444,us445,us446,us447,us448,us449,us450,us451,us452,us453,us454,us455,us456,us457,us458,us459,us460,us461,us462,us463,us464,us465,us466,us467,us468,us469,us470,us471,us472,us473,us474,us475,us476,us477,us478,us479,us480,us481,us482,us483,us484,us485,us486,us487,us488,us489,us490,us491,us492,us4!
93,us494,us495,us496,us497,us498,us499
test:x:1000
-- 
 Andreas Jaeger   aj@arthur.rhein-neckar.de    jaeger@informatik.uni-kl.de
  for pgp-key finger ajaeger@aixd1.rhrk.uni-kl.de

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]