Glibc 2.30 سسٹم لائبریری ریلیز

چھ ماہ کی ترقی کے بعد شائع سسٹم لائبریری کی رہائی جی این یو سی لائبریری (glibc) 2.30جو ISO C11 اور POSIX.1-2008 کے تقاضوں کی مکمل تعمیل کرتا ہے۔ نئی ریلیز میں 48 ڈویلپرز کی اصلاحات شامل ہیں۔

Glibc 2.30 میں لاگو کیا گیا۔ بہتری آپ نوٹ کرسکتے ہیں:

  • متحرک لنکر مشترکہ اشیاء کو پہلے سے لوڈ کرنے کے لیے "--preload" اختیار کی حمایت کرتا ہے (LD_PRELOAD ماحولیاتی متغیر کی طرح)؛
  • شامل کیا گیا twalk_r فنکشن، پہلے سے موجود twalk فنکشن کی طرح، لیکن آپ کو دیے گئے کال بیک فنکشن میں ایک اضافی دلیل دینے کی اجازت دیتا ہے۔
  • لینکس کے لیے، نئے getdents64، gettid اور tgkill فنکشنز شامل کیے گئے ہیں۔
  • میموری مینجمنٹ فنکشنز malloc, calloc, realloc, reallocarray, valloc, pvalloc, memalign, اور posix_memalign ایک ایرر کوڈ کے ساتھ ختم ہو جاتی ہے جب کل ​​آبجیکٹ کا سائز PTRDIFF_MAX قدر سے زیادہ ہو جاتا ہے۔ یہ تبدیلی غیر متعینہ رویے سے گریز کرتی ہے جب پوائنٹر کی ہیرا پھیری کے نتیجے میں ptrdiff_t قسم کا زیادہ بہاؤ ہوتا ہے۔
  • POSIX مجوزہ فنکشنز pthread_cond_clockwait، pthread_mutex_clocklock شامل کیے گئے،
    pthread_rwlock_clockrdlock، pthread_rwlock_clockwrlock، اور sem_clockwait، "ٹائمڈ" مساوی کی طرح، لیکن اس کے علاوہ ٹائمر کو منتخب کرنے کے لیے clockid_t پیرامیٹر لینا؛

  • یونیکوڈ 12.1.0 تفصیلات کو سپورٹ کرنے کے لیے انکوڈنگ ڈیٹا، کریکٹر کی قسم کی معلومات، اور ٹرانسلیٹریشن ٹیبلز کو اپ ڈیٹ کر دیا گیا ہے۔
  • clock_gettime، clock_getres، clock_settime، clock_getcpuclockid، اور clock_nanosleep فنکشنز مزید نئی ایپلیکیشنز کے لیے librt لائبریری میں فراہم نہیں کیے جاتے ہیں، اور libc کی تعریفیں خود بخود اس کی بجائے استعمال ہوتی ہیں۔
  • /etc/resolv.conf نے "inet6" آپشن کو فرسودہ کر دیا ہے۔ resolv.h سے متروک RES_USE_INET6، RES_INSECURE1 اور RES_INSECURE2 جھنڈوں کو ہٹا دیا گیا؛
  • "--enable-bind-now" اختیار کی وضاحت کرتے وقت، انسٹال شدہ پروگرام اب BIND_NOW پرچم کا استعمال کرتے ہوئے پابند ہیں؛
  • لینکس کے لیے مخصوص sys/sysctl.h ہیڈر فائل اور sysctl فنکشن کو فرسودہ کر دیا گیا ہے، اور ایپلیکیشنز کو اس کی بجائے /proc pseudo-FS استعمال کرنا چاہیے؛
  • Glibc کو اب GCC 6.2 یا جدید تر بنانے کی ضرورت ہے (کسی بھی کمپائلر کو ایپلی کیشنز بنانے کے لیے استعمال کیا جا سکتا ہے)؛
  • کمزوری طے کی گئی۔ CVE-2019-7309 کے لئے memcmp فنکشن کے نفاذ میں فرسودہ x32 سب آرکیٹیکچر (x86 IA-32 کے ساتھ الجھن میں نہ پڑیں)، جس کے نتیجے میں فنکشن غلط طریقے سے غیر مماثل تاروں کے لیے قدر 0 واپس کر سکتا ہے۔
  • کمزوری طے کی گئی۔ CVE-2019-9169، جو کچھ ریگولر ایکسپریشنز پر کارروائی کرتے وقت حد سے باہر کے بفر سے ڈیٹا کو پڑھنے کا سبب بن سکتا ہے۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں