Η νέα έκδοση του curl 7.66.0 έρχεται με την αρχική υποστήριξη για HTTP / 3

cURL-7.66.0

Το cURL είναι ένα έργο λογισμικού που αποτελείται από μια βιβλιοθήκη (libcurl) και διερμηνέας εντολών (μπούκλα) προσανατολισμένο στη μεταφορά αρχείων. Υποστηρίζει μεταξύ άλλων τα πρωτόκολλα FTP, FTPS, HTTP, HTTPS, TFTP, SCP, SFTP, Telnet, DICT, FILE και LDAP.

Το cURL υποστηρίζει πιστοποιητικά HTTPS, HTTP POST, HTTP PUT, Μεταφορτώσεις FTP, Kerberos, μεταφορτώσεις φορμών HTTP, διακομιστής μεσολάβησης, cookie, έλεγχος ταυτότητας ονόματος χρήστη και κωδικού πρόσβασης (Βασικό, DIgest, NTLM και Negotiate για HTTP και kerberos 4 για FTP), συνέχιση μεταφοράς αρχείων, διοχέτευση διακομιστή μεσολάβησης HTTP, IMAP, POP3, LDAP, RTSP, RTMP και άλλα οφέλη.

Ο κύριος σκοπός και η χρήση του cURL είναι η αυτοματοποίηση της μεταφοράς αρχείων ή μη εποπτευόμενες αλληλουχίες λειτουργιών. Είναι, για παράδειγμα, ένα έγκυρο εργαλείο για την προσομοίωση ενεργειών χρήστη σε ένα πρόγραμμα περιήγησης ιστού.

Βασικά Είναι ένα βοηθητικό πρόγραμμα λήψης και αποστολής δεδομένων μέσω του δικτύου, που παρέχει τη δυνατότητα ευέλικτου σχηματισμού αιτήματος ορίζοντας παραμέτρους όπως cookie, user_agent, referer και οποιεσδήποτε άλλες κεφαλίδες.

Επιπλέον, η βιβλιοθήκη libcurl παρέχει ένα API για τη χρήση όλων των συναρτήσεων curl σε προγράμματα σε γλώσσες όπως C, Perl, PHP, Python.

Το cURL είναι ανοιχτού κώδικα, ελεύθερο λογισμικό που διανέμεται υπό την άδεια MIT.

Σχετικά με τη νέα έκδοση του cURL 7.66.0

Recientemente κυκλοφόρησε μια νέα έκδοση του cURL lστο οποίο φτάνει με τη διόρθωση 77 λαθών και εφαρμόζει αρκετές καινοτομίες μεταξύ των οποίων υπογραμμίζει την προσθήκη αρχικής υποστήριξης για το πρωτόκολλο HTTP/3, το οποίο δεν έχει ακόμη τεθεί σε πλήρως λειτουργική μορφή και είναι απενεργοποιημένο από προεπιλογή (για παράδειγμα, μέχρι να είναι έτοιμος ο χειριστής τερματισμού σύνδεσης, η παραλληλοποίηση και η επεξεργασία μεγάλων αιτημάτων δεν λειτουργούν).

Για να ενεργοποιήσετε το HTTP 3, απαιτείται αναδόμηση με τα backend quiche ή ngtcp2 +nghttp3. Προτείνεται η χρήση της παραμέτρου “–http3” και της επιλογής libcurl “CURLOPT_HTTP_VERSION”.

Μια άλλη σημαντική αλλαγή για αυτήν τη νέα έκδοση του cURL είναι αυτή πρόσθεσε παραμέτρους "-Z" ("–παράλληλες"). και "–parallel-max", που σας επιτρέπει να οργανώσετε την ταυτόχρονη φόρτωση μιας λίστας διευθύνσεων URL σε πολλαπλές ροές.

Προστέθηκε η δυνατότητα ορισμού διαφορετικού αναγνωριστικού για εξουσιοδότηση στο SASL, που καθορίζεται από την παράμετρο "–sasl-authzid" ή την επιλογή CURLOPT_SASL_AUTHZID (το αναγνωριστικό ελέγχου ταυτότητας μεταβιβάζεται μέσω CURLOPT_USERPWD).

Υλοποιήθηκε η επεξεργασία της κεφαλίδας Retry-After HTTP και του κωδικού επιστροφής 429 χρησιμοποιώντας την παράμετρο --retry ή την επιλογή CURLINFO_RETRY_AFTER.

Η κεφαλίδα "Επανάληψη-Μετά" καθορίζει την καθυστέρηση πριν από την αποστολή επόμενων αιτημάτων, εάν λάβετε κωδικούς απόκρισης 429 (Πάρα πολλά αιτήματα), 503 (Η υπηρεσία δεν είναι διαθέσιμη) ή 301 (Μετακινήθηκε μόνιμα).

Από τις άλλες αλλαγές που ξεχωρίζουν σε αυτή τη νέα έκδοση:

  • Προστέθηκε η συνάρτηση curl_multi_poll(), πανομοιότυπη με τη curl_multi_wait(), εκτός από τις περιπτώσεις που δεν υπάρχουν περιγραφείς αρχείων για αναμονή (το curl_multi_wait τερματίζεται αμέσως και το curl_multi_poll εισάγει μια μικρή καθυστέρηση πριν την έξοδο για την αποφυγή ψευδών καταστάσεων φόρτωσης λόγω κυκλικής κλήσης)
  • Ξεκινώντας με αυτήν την έκδοση, το curl θα θεωρήσει αυτές τις απαντήσεις HTTP μη έγκυρες από προεπιλογή.
  • Διορθώθηκαν ευπάθειες: CVE-2019-5481 : διπλό κλείδωμα ελεύθερης μνήμης στο FTP-KRB (kerberos over FTP). CVE-2019-5482 – Υπερχείλιση buffer στο πρόγραμμα οδήγησης TFTP.
  • Διορθώθηκε μια παλινδρόμηση που προκάλεσε το curl να μην χρησιμοποιήσει σωστά τα διαπιστευτήρια από τη διεύθυνση URL κατά την εκτέλεση ελέγχου ταυτότητας πολλών σταδίων (όπως το HTTP Digest) με έναν διακομιστή μεσολάβησης.

Πώς να εγκαταστήσετε το cURL σε Linux;

Για όσους ενδιαφέρονται να εγκαταστήσουν αυτήν τη νέα έκδοση του cURL Μπορούν να το κάνουν κατεβάζοντας τον πηγαίο κώδικα και καταρτίζοντάς τον.

Για να γίνει αυτό, το πρώτο πράγμα που θα κάνουμε είναι να κατεβάσουμε το πιο πρόσφατο πακέτο cURL με τη βοήθεια ενός τερματικού, σε αυτό ας πληκτρολογήσουμε:

wget https://curl.haxx.se/download/curl-7.66.0.tar.xz

Στη συνέχεια, θα αποσυμπιέσουμε το ληφθέν πακέτο με:

tar -xzvf curl-7.66.0.tar.xz

Μπαίνουμε στον νέο φάκελο με:

cd curl-7.66.0

Μπαίνουμε ως root με:

sudo su

Και πληκτρολογούμε τα εξής:

./configure --prefix=/usr \
--disable-static \
--enable-threaded-resolver \
--with-ca-path=/etc/ssl/certs &&
make
make install &&
rm -rf docs/examples/.deps &&
find docs \( -name Makefile\* -o -name \*.1 -o -name \*.3 \) -exec rm {} \; &&
install -v -d -m755 /usr/share/doc/curl-7.66.0 &&
cp -v -R docs/* /usr/share/doc/curl-7.66.0

Τέλος, μπορούμε να ελέγξουμε την έκδοση με:

curl --version

Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: AB Internet Networks 2008 SL
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.