Glibc 2.30 ಸಿಸ್ಟಮ್ ಲೈಬ್ರರಿ ಬಿಡುಗಡೆ

ಆರು ತಿಂಗಳ ಅಭಿವೃದ್ಧಿಯ ನಂತರ ಪ್ರಕಟಿಸಲಾಗಿದೆ ಸಿಸ್ಟಮ್ ಲೈಬ್ರರಿ ಬಿಡುಗಡೆ GNU C ಲೈಬ್ರರಿ (glibc) 2.30, ಇದು ISO C11 ಮತ್ತು POSIX.1-2008 ಮಾನದಂಡಗಳ ಅವಶ್ಯಕತೆಗಳನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಅನುಸರಿಸುತ್ತದೆ. ಹೊಸ ಬಿಡುಗಡೆಯು 48 ಡೆವಲಪರ್‌ಗಳಿಂದ ಪರಿಹಾರಗಳನ್ನು ಒಳಗೊಂಡಿದೆ.

Glibc 2.30 ರಲ್ಲಿ ಅಳವಡಿಸಲಾದವುಗಳಿಂದ ಅಭಿವೃದ್ಧಿಗಳು ನೀವು ಗಮನಿಸಬಹುದು:

  • ಡೈನಾಮಿಕ್ ಲಿಂಕರ್ ಹಂಚಿಕೆಯ ವಸ್ತುಗಳನ್ನು ಪೂರ್ವ ಲೋಡ್ ಮಾಡಲು "--ಪ್ರೀಲೋಡ್" ಆಯ್ಕೆಗೆ ಬೆಂಬಲವನ್ನು ಒದಗಿಸುತ್ತದೆ (LD_PRELOAD ಪರಿಸರ ವೇರಿಯಬಲ್‌ಗೆ ಹೋಲುತ್ತದೆ);
  • ಈಗಾಗಲೇ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ twalk ಕಾರ್ಯದಂತೆಯೇ twalk_r ಕಾರ್ಯವನ್ನು ಸೇರಿಸಲಾಗಿದೆ, ಆದರೆ ಕೊಟ್ಟಿರುವ ಕಾಲ್‌ಬ್ಯಾಕ್ ಕಾರ್ಯಕ್ಕೆ ಹೆಚ್ಚುವರಿ ಆರ್ಗ್ಯುಮೆಂಟ್ ಅನ್ನು ರವಾನಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ;
  • Linux ಗಾಗಿ ಹೊಸ ಕಾರ್ಯಗಳನ್ನು 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 ವಿವರಣೆಯನ್ನು ಬೆಂಬಲಿಸಲು ಎನ್‌ಕೋಡಿಂಗ್ ಡೇಟಾ, ಅಕ್ಷರ ಪ್ರಕಾರದ ಮಾಹಿತಿ ಮತ್ತು ಲಿಪ್ಯಂತರಣ ಕೋಷ್ಟಕಗಳನ್ನು ನವೀಕರಿಸಲಾಗಿದೆ;
  • librt ಲೈಬ್ರರಿಯು ಇನ್ನು ಮುಂದೆ clock_gettime, clock_getres, clock_settime, clock_getcpuclockid, ಮತ್ತು clock_nanosleep ಕಾರ್ಯಗಳನ್ನು ಹೊಸ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗಾಗಿ ಒದಗಿಸುವುದಿಲ್ಲ, ಬದಲಿಗೆ ಸ್ವಯಂಚಾಲಿತವಾಗಿ libc ನಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಗಳನ್ನು ಬಳಸುತ್ತದೆ;
  • "inet6" ಆಯ್ಕೆಯನ್ನು /etc/resolv.conf ನಿಂದ ತೆಗೆದುಹಾಕಲಾಗಿದೆ. resolv.h ನಿಂದ ಹಳೆಯದಾದ RES_USE_INET6, RES_INSECURE1 ಮತ್ತು RES_INSECURE2 ಅನ್ನು ತೆಗೆದುಹಾಕಲಾಗಿದೆ;
  • "--enable-bind-now" ಆಯ್ಕೆಯನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುವಾಗ, ಸ್ಥಾಪಿಸಲಾದ ಪ್ರೋಗ್ರಾಂಗಳು ಈಗ BIND_NOW ಫ್ಲ್ಯಾಗ್ ಅನ್ನು ಬಳಸುತ್ತವೆ;
  • Linux-ನಿರ್ದಿಷ್ಟ sys/sysctl.h ಹೆಡರ್ ಫೈಲ್ ಮತ್ತು sysctl ಕಾರ್ಯವನ್ನು ಅಸಮ್ಮತಿಸಲಾಗಿದೆ, ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ಬದಲಿಗೆ /proc ಸ್ಯೂಡೋ-ಎಫ್‌ಎಸ್ ಅನ್ನು ಬಳಸಬೇಕು;
  • Glibc ಅನ್ನು ನಿರ್ಮಿಸಲು ಈಗ GCC 6.2 ಅಥವಾ ಹೊಸದು (ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ನಿರ್ಮಿಸಲು ಯಾವುದೇ ಕಂಪೈಲರ್ ಅನ್ನು ಬಳಸಬಹುದು);
  • ದುರ್ಬಲತೆಯನ್ನು ನಿವಾರಿಸಲಾಗಿದೆ CVE-2019-7309 ಗಾಗಿ memcmp ಕಾರ್ಯದ ಅನುಷ್ಠಾನದಲ್ಲಿ ಹಳತಾಗಿದೆ x32 ಉಪನಿರ್ಮಾಣ (x86 IA-32 ನೊಂದಿಗೆ ಗೊಂದಲಕ್ಕೀಡಾಗಬಾರದು), ಇದರ ಪರಿಣಾಮವಾಗಿ ಕಾರ್ಯವು ಹೊಂದಾಣಿಕೆಯಾಗದ ಸ್ಟ್ರಿಂಗ್‌ಗಳಿಗೆ ಮೌಲ್ಯ 0 ಅನ್ನು ತಪ್ಪಾಗಿ ಹಿಂತಿರುಗಿಸುತ್ತದೆ;
  • ದುರ್ಬಲತೆಯನ್ನು ನಿವಾರಿಸಲಾಗಿದೆ CVE-2019-9169, ಇದು ಕೆಲವು ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಿದಾಗ ಬಫರ್‌ನ ಗಡಿಯ ಹೊರಗಿನ ಪ್ರದೇಶದಿಂದ ಡೇಟಾವನ್ನು ಓದಲು ಕಾರಣವಾಗಬಹುದು.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ