diff --git a/GUIDELINES.md b/GUIDELINES.md index 30fec7657..4d360ce16 100644 --- a/GUIDELINES.md +++ b/GUIDELINES.md @@ -24,7 +24,7 @@ Let's try to use the correct UTF-8 characters! ## Avoid the short forms of dir and repo -They're rather called "directory" and "respository" +They are rather called "directory" and "respository" ## Internet with a capital I diff --git a/README.md b/README.md index c2b281834..081fe68bd 100644 --- a/README.md +++ b/README.md @@ -8,13 +8,13 @@ why all those millions of existing users use it. This book is meant to be interesting and useful to both casual readers and the somewhat more experienced developers, and offers something for you all to pick -and choose from. Don't read it from front to back. Read the chapters you're +and choose from. Don't read it from front to back. Read the chapters you are curious about and go back and forth as you see fit. I hope to run this book project as I do all other projects I work on: in the open, completely free to download and read, free for anyone to comment on, available for everyone to contribute to and help out with. Send your bug -reports, pull requests or critiques to me and I'll improve this book +reports, pull requests or critiques to me and I will improve this book accordingly. This book will never be finished. I intend to keep working on it and while I @@ -48,7 +48,7 @@ site](https://daniel.haxx.se/). ## Help! If you find mistakes, omissions, errors or blatant lies in this document, -please send me a refreshed version of the affected paragraph and I'll make +please send me a refreshed version of the affected paragraph and I will make amended versions. I will give proper credits to everyone who helps out! I hope to make this document better over time. diff --git a/building-tls.md b/building-tls.md index 4baea853f..57b37420f 100644 --- a/building-tls.md +++ b/building-tls.md @@ -24,9 +24,9 @@ machine. ## configure -Below, you'll learn how to tell configure to use the different libraries. Note -that for all libraries except OpenSSL and its siblings, you must *disable* the -check for OpenSSL by using `--without-ssl`. +Below, you will learn how to tell configure to use the different +libraries. Note that for all libraries except OpenSSL and its siblings, you +must *disable* the check for OpenSSL by using `--without-ssl`. ### OpenSSL, BoringSSL, libressl diff --git a/callback-read.md b/callback-read.md index be36110fb..5545474f2 100644 --- a/callback-read.md +++ b/callback-read.md @@ -9,9 +9,9 @@ The `read_callback` function must match this prototype: size_t read_callback(char *buffer, size_t size, size_t nitems, void *stream); This callback function gets called by libcurl when it wants to send data to -the server. This is a transfer that you've set up to upload data or otherwise -send it off to the server. This callback will be called over and over until -all data has been delivered or the transfer failed. +the server. This is a transfer that you have set up to upload data or +otherwise send it off to the server. This callback will be called over and +over until all data has been delivered or the transfer failed. The **stream** pointer points to the private data set with `CURLOPT_READDATA`: @@ -22,8 +22,9 @@ If this callback isn't set, libcurl instead uses 'fread' by default. The data area pointed at by the pointer **buffer** should be filled up with at most **size** multiplied with **nitems** number of bytes by your function. The callback should then return the number of bytes that it stored in that memory -area, or 0 if we've reached the end of the data. The callback can also return -a few "magic" return codes to cause libcurl to return failure immediately or -to pause the particular transfer. See the [CURLOPT_READFUNCTION man -page](https://curl.haxx.se/libcurl/c/CURLOPT_READFUNCTION.html) for details. +area, or 0 if we have reached the end of the data. The callback can also +return a few "magic" return codes to cause libcurl to return failure +immediately or to pause the particular transfer. See the [CURLOPT_READFUNCTION +man page](https://curl.haxx.se/libcurl/c/CURLOPT_READFUNCTION.html) for +details. diff --git a/cmdline-configfile.md b/cmdline-configfile.md index fadc1bb9e..fb0d07ec1 100644 --- a/cmdline-configfile.md +++ b/cmdline-configfile.md @@ -51,7 +51,7 @@ The argument to an option can be specified without double quotes and then curl will treat the next space or newline as the end of the argument. So if you want to provide an argument with embedded spaces you must use double quotes. -The user agent string example we've used above has no white spaces and +The user agent string example we have used above has no white spaces and therefore it can also be provided without the quotes like: user-agent = Everything-is-an-agent diff --git a/cmdline-globbing.md b/cmdline-globbing.md index 8c9bb8a8e..a848edc8d 100644 --- a/cmdline-globbing.md +++ b/cmdline-globbing.md @@ -66,16 +66,16 @@ both the web server and the mail server: ### Output variables for globbing -In all the globbing examples previously in this chapter we've selected to use -the `-O / --remote-name` option, which makes curl save the target file using -the file name part of the used URL. +In all the globbing examples previously in this chapter we have selected to +use the `-O / --remote-name` option, which makes curl save the target file +using the file name part of the used URL. -Sometimes that is not enough. You're downloading multiple files and maybe you +Sometimes that is not enough. You are downloading multiple files and maybe you want to save them in a different subdirectory or create the saved file names differently. curl, of course, has a solution for these situations as well: output file name variables. -Each "glob" used in a URL gets a separate variable. They're referenced as +Each "glob" used in a URL gets a separate variable. They are referenced as '#[num]' - that means the single letter '#' followed by the glob number which starts with 1 for the first glob and ends with the last glob. diff --git a/cmdline-listopts.md b/cmdline-listopts.md index 9d8a99474..db2a7be8b 100644 --- a/cmdline-listopts.md +++ b/cmdline-listopts.md @@ -5,10 +5,10 @@ keep increasing over time. Chances are the number of options will reach 250 within a few years. In order to find out which options you need to perform as certain action, you -can, of course, list all options, scan through the list and pick the one you're -looking for. `curl --help` or simply `curl -h` will get you a list of all +can, of course, list all options, scan through the list and pick the one you +are looking for. `curl --help` or simply `curl -h` will get you a list of all existing options with a brief explanation. If you don't really know what -you're looking for, you probably won't be entirely satisfied. +you are looking for, you probably won't be entirely satisfied. Then you can instead opt to use `curl --manual` which will output the entire man page for curl plus an appended tutorial for the most common use diff --git a/cmdline-passwords.md b/cmdline-passwords.md index 0e14a06b8..35f3954e4 100644 --- a/cmdline-passwords.md +++ b/cmdline-passwords.md @@ -15,7 +15,7 @@ wants to request a page requiring HTTP authentication and her password is ### Command line leakage -Several potentially bad things are going on here. First, we're entering a +Several potentially bad things are going on here. First, we are entering a password on the command line and the command line might be readable for other users on the same system (assuming you have a multi-user system). curl will help minimize that risk by trying to blank out passwords from process diff --git a/cmdline-versions.md b/cmdline-versions.md index 8dde2feb9..5e3140182 100644 --- a/cmdline-versions.md +++ b/cmdline-versions.md @@ -4,9 +4,9 @@ already then worked on the specified URL and none, one or more command-line options given to it. -Since then we've added more options. We add options as we go along and almost -every new release of curl has one or a few new options that allow users to -modify certain aspects of its operation. +Since then we have added more options. We add options as we go along and +almost every new release of curl has one or a few new options that allow users +to modify certain aspects of its operation. With the curl project's rather speedy release chain with a new release shipping every eight weeks, it is almost inevitable that you are at least not diff --git a/cmdline.md b/cmdline.md index 23fc9f9f9..7c5f6834a 100644 --- a/cmdline.md +++ b/cmdline.md @@ -17,7 +17,7 @@ provided by the curl project, lots of people install it using a package tool for their operating system and yet another portion of users download binary install packages from sources they trust. -No matter how you do it, make sure you're getting your version from a trusted +No matter how you do it, make sure you are getting your version from a trusted source and that you verify digital signatures or the authenticity of the packages in other ways. diff --git a/curl-bugs.md b/curl-bugs.md index 5f852c3e9..182cad480 100644 --- a/curl-bugs.md +++ b/curl-bugs.md @@ -63,11 +63,11 @@ test cases, runs the test and verifies that the outcome is the correct one and that no other problem happened, like a memory leak or something fishy in the protocol layer. -The test suite is meant to be possible to run after you've built curl yourself -and there are a fair number of volunteers who also help out by running the -test suite automatically a few times per day to make sure the latest commits -get a run. This way, we hopefully discover the worst flaws pretty soon after -they were introduced. +The test suite is meant to be possible to run after you have built curl +yourself and there are a fair number of volunteers who also help out by +running the test suite automatically a few times per day to make sure the +latest commits get a run. This way, we hopefully discover the worst flaws +pretty soon after they were introduced. We don't test everything and even when we try to test things there will always be subtle details that get through and that we, sometimes years after the diff --git a/curl-comm.md b/curl-comm.md index d5bc7a502..a7566f602 100644 --- a/curl-comm.md +++ b/curl-comm.md @@ -7,7 +7,7 @@ all communication public and we use open communication channels. Most discussions are held on mailing lists, we use bug trackers where all issues are discussed and handled with full insight for everyone who cares to look. -It is important to realize that we're all jointly taking care of the project, +It is important to realize that we are all jointly taking care of the project, we fix problems and we add features. Sometimes a regular contributor grows bored and fades away, sometimes a new eager contributor steps out from the shadows and starts helping out more. To keep this ship going forward as well @@ -21,7 +21,7 @@ communication—no fancy web forums or similar. Using a mailing list is therefore becoming an art that isn't practised everywhere and may be a bit strange and unusual to you. But fear not. It is just about sending emails to an address that then sends that e-mail out to all the subscribers. Our mailing -lists have at most a few thousand subscribers. If you're mailing for the first +lists have at most a few thousand subscribers. If you are mailing for the first time, it might be good to read a few old mails first to get to learn the culture and what's considered good practice. diff --git a/curl-does.md b/curl-does.md index 1a2536612..c65e58265 100644 --- a/curl-does.md +++ b/curl-does.md @@ -19,7 +19,7 @@ about HTML or anything else of the content that is popular to transfer over HTTP, but it knows all about how to transfer such data over HTTP. Both products are frequently used not only to drive thousands or millions of -scripts and applications for an Internet connected world, but they're also +scripts and applications for an Internet connected world, but they are also widely used for server testing, protocol fiddling and trying out new things. The library is used in every imaginable sort of embedded device where Internet diff --git a/curl-etiquette.md b/curl-etiquette.md index a2756607e..b1edb932b 100644 --- a/curl-etiquette.md +++ b/curl-etiquette.md @@ -34,7 +34,7 @@ When replying to a message from the list, make sure that you do "group reply" or "reply to all", and not just reply to the author of the single mail you reply to. -We're actively discouraging replying back to the single person by setting the +We are actively discouraging replying back to the single person by setting the Reply-To: field in outgoing mails back to the mailing list address, making it harder for people to mail the author only by mistake. @@ -69,8 +69,8 @@ for your comments. When you want to add a comment you do so, inline, right after the quotes that relate to your comment. Then you continue downwards again. -When most of the quotes have been removed and you've added your own words, -you're done! +When most of the quotes have been removed and you have added your own words, +you are done! #### HTML is not for mails diff --git a/curl-future.md b/curl-future.md index 2d7734e1d..c9eba7388 100644 --- a/curl-future.md +++ b/curl-future.md @@ -5,7 +5,7 @@ There's no slowdown in sight in curl's future, bugs reported, development pace or how Internet protocols are being developed or updated. -We're looking forward to support for more protocols, support for more features +We are looking forward to support for more protocols, support for more features within the already supported protocols, and more and better APIs for libcurl to allow users to do transfers even better and faster. @@ -16,7 +16,8 @@ yes, a list of known problems we would like to get fixed. There's a [ROADMAP](https://curl.haxx.se/dev/roadmap.html) document that describe some plans for the short-term that some of the active developers -thought they'd work on next. No promises or guarantees are implied, of course. +thought they wouldd work on next. No promises or guarantees are implied, of +course. We are highly dependent on developers to join in and work on what they want to get done, be it bug fixes or new features. diff --git a/curl-maillists.md b/curl-maillists.md index df81b43a8..9e39d818e 100644 --- a/curl-maillists.md +++ b/curl-maillists.md @@ -15,8 +15,9 @@ See https://cool.haxx.se/mailman/listinfo/curl-users ### curl-library The main development list, and also for users of libcurl. We discuss how to -use libcurl in applications as well as development of libcurl itself. You'll -find lots of questions on libcurl behavior, debugging and documentation issues. +use libcurl in applications as well as development of libcurl itself. You will +find lots of questions on libcurl behavior, debugging and documentation +issues. See https://cool.haxx.se/mailman/listinfo/curl-library diff --git a/curl-name.md b/curl-name.md index 1e95b136e..cd24ddad9 100644 --- a/curl-name.md +++ b/curl-name.md @@ -27,7 +27,7 @@ programming language. That curl still [exists](http://www.curl.com). Several libcurl bindings for various programming languages use the term "curl" or "CURL" in part or completely to describe their bindings, so sometimes -you'll find users talking about curl but targeting neither the command-line tool +you will find users talking about curl but targeting neither the command-line tool nor the library that is made by this project. ### As a verb diff --git a/curl.md b/curl.md index 7fe838133..1fe5250a8 100644 --- a/curl.md +++ b/curl.md @@ -2,7 +2,7 @@ ![curl logo](curl-logo.jpg) -A funny detail about Open Source projects is that they're called "projects", +A funny detail about Open Source projects is that they are called "projects", as if they were somehow limited in time or ever can get done. The cURL "project" is a number of loosely-coupled individual volunteers working on writing software together with a common mission: to do reliable data transfers diff --git a/ftp-twoconnections.md b/ftp-twoconnections.md index 46d2af531..c5b7101ad 100644 --- a/ftp-twoconnections.md +++ b/ftp-twoconnections.md @@ -36,7 +36,7 @@ the second connection that then curl connects to. Outgoing connections to a new port are generally easier and less restricted for end users and clients, but it then requires that the network in the server's end allows it. -Passive connections are enabled by default, but if you've switched on active +Passive connections are enabled by default, but if you have switched on active before, you can switch back to passive with `--ftp-pasv`. You can also explicitly ask curl not to use EPSV (which is a slightly newer diff --git a/http-basics.md b/http-basics.md index 3554306de..b247fd5ab 100644 --- a/http-basics.md +++ b/http-basics.md @@ -1,7 +1,7 @@ ### HTTP protocol basics -(This assumes you've read the [Network and protocols](protocols.md) section or -are otherwise already familiar with protocols.) +(This assumes you have read the [Network and protocols](protocols.md) section +or are otherwise already familiar with protocols.) HTTP is a protocol that is easy to learn the basics of. A client connects to a server—and it is always the client that takes the initiative—sends a diff --git a/http-cookies.md b/http-cookies.md index b98bf6a9a..f870884ec 100644 --- a/http-cookies.md +++ b/http-cookies.md @@ -85,7 +85,7 @@ it will not flush session cookies unless you tell it to. ### New cookie session Instead of telling curl when a session ends, in order to flush session cookies -and with this basically signal to the server that we're starting a new +and with this basically signal to the server that we are starting a new session, curl features an option that lets the user tell when a new session begins. diff --git a/http-post.md b/http-post.md index 767c62599..a076d0cfb 100644 --- a/http-post.md +++ b/http-post.md @@ -91,7 +91,7 @@ As an example, you could POST a name to have it encoded by curl: A little convenience feature that could be suitable to mention in this context (even though it isn't for POSTing), is the `-G` or `--get` option, which takes -all data you've specified with the different `-d` variants and appends that +all data you have specified with the different `-d` variants and appends that data on the right end of the URL separated with a '?' and then makes curl send a GET instead. @@ -176,7 +176,7 @@ own server or a test server that just outputs exactly what it gets. Completing that form submission will then show you exactly how a browser sends it. A third option is, of course, to use a network capture tool such as Wireshark to -check exactly what is sent over the wire. If you're working with HTTPS, you +check exactly what is sent over the wire. If you are working with HTTPS, you can't see form submissions in clear text on the wire but instead you need to make sure you can have wireshark extract your TLS private key from your browser. See the Wireshark documentation for details on doing that. diff --git a/http-postvspost.md b/http-postvspost.md index 6e8566f95..998b80167 100644 --- a/http-postvspost.md +++ b/http-postvspost.md @@ -14,7 +14,7 @@ data correctly. A client cannot just pick a format of its own choice. ## HTML web forms -When we're talking browsers and HTML, the standard way is to offer a form to +When we are talking browsers and HTML, the standard way is to offer a form to the user that sends off data when the form has been filled in. The `
` tag is what makes one of those appear on the web page. The tag instructs the browser how to format its POST. If the form tag includes diff --git a/http-put.md b/http-put.md index 9f5b0a80a..04cd97844 100644 --- a/http-put.md +++ b/http-put.md @@ -1,6 +1,6 @@ ## PUT -The difference between a PUT and a POST is subtle. They're virtually identical +The difference between a PUT and a POST is subtle. They are virtually identical over the wire except for the different method strings. Where POST is meant to pass on data to a remote resource, PUT is supposed to be the new version of that resource. diff --git a/http-redirects.md b/http-redirects.md index fe2d177f9..15d5a0626 100644 --- a/http-redirects.md +++ b/http-redirects.md @@ -108,7 +108,7 @@ different host curl limits what it sends away to other hosts than the original within the same "transfer". So if you want the credentials to also get sent to the following host names -even though they're not the same as the original—presumably because you +even though they are not the same as the original—presumably because you trust them and know that there's no harm in doing that—you can tell curl that it is fine to do so by using the `--location-trusted` option. diff --git a/http.md b/http.md index d75066531..731832792 100644 --- a/http.md +++ b/http.md @@ -5,7 +5,7 @@ important and most frequently used protocol that curl supports. This chapter will explain how to do effective HTTP transfers and general fiddling with curl. -This will mostly work the same way for HTTPS, as they're really the same thing +This will mostly work the same way for HTTPS, as they are really the same thing under the hood, as HTTPS is HTTP with an extra security TLS layer. See also the specific [HTTPS](#https) section below. diff --git a/libcurl-cleanup.md b/libcurl-cleanup.md index 1126e9c62..23e92a5ad 100644 --- a/libcurl-cleanup.md +++ b/libcurl-cleanup.md @@ -1,14 +1,14 @@ ## Cleanup -In previous sections we've discussed how to setup handles and how to drive the -transfers. All transfers will, of course, end up at some point, either successfully -or with a failure. +In previous sections we have discussed how to setup handles and how to drive +the transfers. All transfers will, of course, end up at some point, either +successfully or with a failure. ### Multi API -When you've finished a single transfer with the multi API, you use -`curl_multi_info_read()` to identify exactly which easy handle was -completed and you remove that easy handle from the multi handle with +When you have finished a single transfer with the multi API, you use +`curl_multi_info_read()` to identify exactly which easy handle was completed +and you remove that easy handle from the multi handle with `curl_multi_remove_handle()`. If you remove the last easy handle from the multi handle so there are no more diff --git a/libcurl-connectionreuse.md b/libcurl-connectionreuse.md index 0570fae70..2696818c7 100644 --- a/libcurl-connectionreuse.md +++ b/libcurl-connectionreuse.md @@ -8,13 +8,13 @@ creating a new one offers significant benefits in speed and required resources. ### Easy API pool -When you're using the easy API, or, more specifically, curl_easy_perform(), +When you are using the easy API, or, more specifically, curl_easy_perform(), libcurl will keep the pool associated with the specific easy handle. Then reusing the same easy handle will ensure it can reuse its connection. ### Multi API pool -When you're using the multi API, the connection pool is instead kept +When you are using the multi API, the connection pool is instead kept associated with the multi handle. This allows you to cleanup and re-create easy handles freely without risking losing the connection pool, and it allows the connection used by one easy handle to get reused by a separate one in a diff --git a/libcurl-drive-multi-socket.md b/libcurl-drive-multi-socket.md index 881fd010b..9d4e32c94 100644 --- a/libcurl-drive-multi-socket.md +++ b/libcurl-drive-multi-socket.md @@ -124,8 +124,8 @@ set a new timeout for the next expiry period. ### How to start everything -When you've added one or more easy handles to the multi handle and set the -socket and timer callbacks in the multi handle, you're ready to start the +When you have added one or more easy handles to the multi handle and set the +socket and timer callbacks in the multi handle, you are ready to start the transfer. To kick it all off, you tell libcurl it timed out (because all easy handles diff --git a/libcurl-easyhandle.md b/libcurl-easyhandle.md index 656deecbe..8258f1f1d 100644 --- a/libcurl-easyhandle.md +++ b/libcurl-easyhandle.md @@ -24,7 +24,7 @@ Read more on [easy options](libcurl-options.md) in its separate section. All options are "sticky". They remain set in the handle until you change them again, or call `curl_easy_reset()` on the handle. -When you're done setting options to your easy handle, you can fire off the +When you are done setting options to your easy handle, you can fire off the actual transfer. The actual "perform the transfer phase" can be done using different @@ -43,6 +43,6 @@ do a wide variety of things. ### Reuse! -Easy handles are meant and designed to be reused. When you've done a single +Easy handles are meant and designed to be reused. When you have done a single transfer with the easy handle, you can immediately use it again for your next transfer. There are lots of gains to be had by this. diff --git a/libcurl-headers.md b/libcurl-headers.md index ccdbe140e..af18d6513 100644 --- a/libcurl-headers.md +++ b/libcurl-headers.md @@ -6,6 +6,6 @@ There is only ever one header your libcurl using application needs to include: That file in turn includes a few other public header files but you can basically pretend they don't exist. (Historically speaking, we started out -slightly different but over time we've stabilized around this form of only +slightly different but over time we have stabilized around this form of only using a single one for includes.) diff --git a/libcurl-http-download.md b/libcurl-http-download.md index 775af04fd..416a1966d 100644 --- a/libcurl-http-download.md +++ b/libcurl-http-download.md @@ -9,7 +9,7 @@ particular resource—the standard HTTP download request: curl_easy_perform(easy); Since options set in an easy handle are sticky and remain until changed, there -may be times when you've asked for another request method than GET and then +may be times when you have asked for another request method than GET and then want to switch back to GET again for a subsequent request. For this purpose, there's the `CURLOPT_HTTPGET` option: diff --git a/libcurl.md b/libcurl.md index d2b72d63a..27337d953 100644 --- a/libcurl.md +++ b/libcurl.md @@ -13,10 +13,10 @@ information as you can and want, and then you tell libcurl to perform that transfer. That said, networking and protocols are areas with lots of pitfalls and -special cases so the more you know about these things, the more you'll be able -to understand about libcurl's options and ways of working. Not to mention, -such knowledge is invaluable when you're debugging and need to understand what -to do next when things don't go as you intended. +special cases so the more you know about these things, the more you will be +able to understand about libcurl's options and ways of working. Not to +mention, such knowledge is invaluable when you are debugging and need to +understand what to do next when things don't go as you intended. The most basic libcurl using application can be as small as just a couple of lines of code, but most applications will, of course, need more code than that. diff --git a/protocols-network.md b/protocols-network.md index e7a180ff4..c2f50080b 100644 --- a/protocols-network.md +++ b/protocols-network.md @@ -74,8 +74,8 @@ will do a TLS handshake first and only continue further if that succeeds. ### Transfer data -When the connecting "string" we call TCP is attached to the remote computer (and we've -done the possible additional TLS handshake), there's an established connection -between the two machines and that connection can then be used to exchange -data. That communication is done using a "protocol", as discussed in the -following chapter. +When the connecting "string" we call TCP is attached to the remote computer +(and we have done the possible additional TLS handshake), there's an +established connection between the two machines and that connection can then +be used to exchange data. That communication is done using a "protocol", as +discussed in the following chapter. diff --git a/sourcecode-contributing.md b/sourcecode-contributing.md index 8bd02245d..f8ca93fc2 100644 --- a/sourcecode-contributing.md +++ b/sourcecode-contributing.md @@ -8,7 +8,7 @@ are not breaking any contracts or laws by providing that to us. If you don't have permission, don't contribute it to us. Contributing to a project like curl could be many different things. While -source code is the stuff that is needed to build the products, we're also +source code is the stuff that is needed to build the products, we are also depending on good documentation, testing (both test code and test infrastructure), web content, user support and more. @@ -48,7 +48,7 @@ Of course, you can also add contents to the project that isn't code, like documentation, graphics or web site contents, but the general rules apply equally to that. -If you're fixing a problem you have or a problem that others are reporting, we +If you are fixing a problem you have or a problem that others are reporting, we will be thrilled to receive your fix and merge it as soon as possible! ### What not to add @@ -71,7 +71,7 @@ to get less friction and to be successful, faster: - Quick hacks or dirty solutions that have a high risk of not working on platforms you don't run or on architectures you don't know. We don't care if - you're in a hurry or that it works for you. We do not accept high risk code + you are in a hurry or that it works for you. We do not accept high risk code or code that is hard to read or understand. - Code that breaks the build. Sure, we accept that we sometimes have to add @@ -134,7 +134,7 @@ users go directly to `git send-email` and have git send the e-mail itself! ### git commit style When you commit a patch to git, you give it a commit message that describes -the change you're committing. We have a certain style in the project that we +the change you are committing. We have a certain style in the project that we ask you to use: [area]: [short line describing the main effect] diff --git a/sourcecode-web.md b/sourcecode-web.md index 293f3aef4..21e75d79b 100644 --- a/sourcecode-web.md +++ b/sourcecode-web.md @@ -21,9 +21,10 @@ man pages get converted to HTML with [roffit](https://daniel.haxx.se/projects/roffit/). Make sure fcpp, perl, roffit, make and curl are all in your $PATH. -Once you've cloned the git repository the first time, invoke `sh bootstrap.sh` once -to get a symlink and some some initial local files setup, and then you can -build the web site locally by invoking `make` in the source root tree. +Once you have cloned the git repository the first time, invoke `sh +bootstrap.sh` once to get a symlink and some some initial local files setup, +and then you can build the web site locally by invoking `make` in the source +root tree. Note that this doesn't make you a complete web site mirror, as some scripts and files are only available on the real actual site, but should give you diff --git a/usingcurl-connections.md b/usingcurl-connections.md index e81bfa6b2..4fa42aac9 100644 --- a/usingcurl-connections.md +++ b/usingcurl-connections.md @@ -146,11 +146,11 @@ precision. Allow 2781 milliseconds to be spent on trying to connect: On machines with multiple network interfaces that are connected to multiple networks, there are siutuations where you can decide which network interface -you'd prefer the outgoing network traffic to use. Or which originating IP +you would prefer the outgoing network traffic to use. Or which originating IP address (out of the multiple ones you have) to use in the communication. -Tell curl which network interface, which IP address or even host name that -you'd like to "bind" your local end of the communication to, with the +Tell curl which network interface, which IP address or even host name that you +wouldd like to "bind" your local end of the communication to, with the `--interface` option: curl --interface eth1 https://www.example.com/ @@ -164,7 +164,7 @@ you'd like to "bind" your local end of the communication to, with the A TCP connection is created betweeen an IP address and a port number in the local end and an IP address and a port number in the remote end. The remote port number can be specified in the URL and usually helps identify which -service you're targetting. +service you are targetting. The local port number is usually just randomly assigne to your TCP connection by the network stack and you normally don't have to bother yourself with @@ -191,7 +191,7 @@ HTTPS page: ## Keep alive -TCP connections can be totally without traffic in any diection when they're +TCP connections can be totally without traffic in any diection when they are not used. A totally idle connection can therefore not be clearly separated from a connection that has gone completely stale because of network or server issues. diff --git a/usingcurl-copyas.md b/usingcurl-copyas.md index c8c7865d5..525e7806b 100644 --- a/usingcurl-copyas.md +++ b/usingcurl-copyas.md @@ -24,17 +24,17 @@ installations. When you pop up the More tools->Developer mode in Chrome, and you select the Network tab you see the HTTP traffic used to get the resources of the site. On -the line of the specific resource you're interested in, you right-click with -the mouse and you select "Copy as cURL" and it'll generate a command line for -you in your clipboard. Paste that in a shell to get a curl command line that -makes the transfer. This feature is available by default in all Chome and +the line of the specific resource you are interested in, you right-click with +the mouse and you select "Copy as cURL" and it will generate a command line +for you in your clipboard. Paste that in a shell to get a curl command line +that makes the transfer. This feature is available by default in all Chome and Chromium installations. ![copy as curl with Chrome](chrome-copy-as-curl.png) ## On Firefox, without using the devtools -If this is something you'd like to get done more often, you probably find +If this is something you would like to get done more often, you probably find using the developer tools a bit inconvenient and cumbersome to pop up just to get the command line copied. Then [cliget](https://addons.mozilla.org/en-US/firefox/addon/cliget/) is the diff --git a/usingcurl-downloads.md b/usingcurl-downloads.md index b4b39082e..1c28435c6 100644 --- a/usingcurl-downloads.md +++ b/usingcurl-downloads.md @@ -2,7 +2,7 @@ "Download" means getting data from a server on a network, and the server is then clearly considered to be above you. This is loading data down from the -server to your machine where you're running curl. +server to your machine where you are running curl. Downloading is probably the most common use case for curl—getting the specific data onto your machine, pointed to by a URL. @@ -34,11 +34,11 @@ etc. ### Storing downloads -If you try the example download as in the previous section, you'll notice that -curl will output the downloaded data to stdout unless told to do something -else. Outputting data to stdout is really useful when you want to pipe it into -another program or similar, but it is not always the optimal way to deal with -your downloads. +If you try the example download as in the previous section, you will notice +that curl will output the downloaded data to stdout unless told to do +something else. Outputting data to stdout is really useful when you want to +pipe it into another program or similar, but it is not always the optimal way +to deal with your downloads. Give curl a specific file name to save the download in with `-o [filename]` (with `--output` as the long version of the option), where filename is either @@ -115,11 +115,11 @@ downloads a web page with something like: $ curl https://example.com/ -o storage.html -…and when inspecting the `storage.html` file after the fact, the user -realizes that one or more characters look funny or downright wrong. This can -then very well be because the server sent the characters using charset X, -while your editor and environment use charset Y. In an ideal world, we'd all -use UTF-8 everywhere but unfortunately, that is still not the case. +…and when inspecting the `storage.html` file after the fact, the user realizes +that one or more characters look funny or downright wrong. This can then very +well be because the server sent the characters using charset X, while your +editor and environment use charset Y. In an ideal world, we would all use +UTF-8 everywhere but unfortunately, that is still not the case. A common work-around for this issue that works decently is to use the common `iconv` utility to translate a text file to and from different @@ -243,7 +243,7 @@ pass those URLs to curl and ask it to get those, just like any other URLs. Clients also differ in how they send their requests, and some aspects of a request for a resource include, for example, format preferences, asking for -compressed data, or just telling the server from which previous page we're +compressed data, or just telling the server from which previous page we are "coming from". curl's requests will differ a little or a lot from how your browser sends its requests. @@ -285,7 +285,7 @@ Interfering intermediaries are often the cause of lots of head aches and mysteries down to downright malicious modifications of content. We strongly encourage you to use HTTPS or other means to verify that the -contents you're downloading or uploading are really the data that the remote +contents you are downloading or uploading are really the data that the remote server has sent to you and that your precious bytes end up verbatim at the intended destination. @@ -294,7 +294,7 @@ intended destination. When curl transfers data, it will attempt to do that as fast as possible. It goes for both uploads and downloads. Exactly how fast that will be depends on several factors, including your computer's ability, your own network -connection's bandwidth, the load on the remote server you're transferring +connection's bandwidth, the load on the remote server you are transferring to/from and the latency to that server. And your curl transfers are also likely to compete with other transfers on the networks the data travels over, from other users or just other apps by the same user. @@ -381,7 +381,7 @@ issued. When `--raw` is used, it disables all internal HTTP decoding of content or transfer encodings and instead makes curl passed on unaltered, raw, data. -This is typically used if you're writing some sort of middle software and you +This is typically used if you are writing some sort of middle software and you want to pass on the content to perhaps another HTTP client and allow that to do the decoding instead. diff --git a/usingcurl-ftp.md b/usingcurl-ftp.md index e5b0bb9b6..639458d4d 100644 --- a/usingcurl-ftp.md +++ b/usingcurl-ftp.md @@ -13,7 +13,7 @@ important to know at times when things don't run as planned. ## Ping-pong The FTP protocol is a command and response protocol; the client sends a -command and the server responds. If you use curl's `-v` option you'll get to +command and the server responds. If you use curl's `-v` option you will get to see all the commands and responses during a transfer. For an ordinary transfer, there are something like 5 to 8 commands necessary diff --git a/usingcurl-proxies.md b/usingcurl-proxies.md index 0c638811f..f947e9fda 100644 --- a/usingcurl-proxies.md +++ b/usingcurl-proxies.md @@ -14,7 +14,7 @@ them further down in this section. ### Discover your proxy Some networks are setup to require a proxy in order for you to reach the -Internet or perhaps that special network you're interested in. The use of +Internet or perhaps that special network you are interested in. The use of proxies are introduced on your network by the people and management that run your network for policy or technical reasons. @@ -244,7 +244,7 @@ curl checks for the existence of specially-named environment variables before it runs to see if a proxy is requested to get used. You specify the proxy by setting a variable named `[scheme]_proxy` to hold the -proxy host name (the same way you'd specify the host with `-x`). So if you +proxy host name (the same way you would specify the host with `-x`). So if you want to tell curl to use a proxy when access a HTTP server, you set the 'http_proxy' environment variable. Like this: diff --git a/usingcurl-returns.md b/usingcurl-returns.md index 91f9992a9..539b36c61 100644 --- a/usingcurl-returns.md +++ b/usingcurl-returns.md @@ -5,10 +5,10 @@ or exit code when something goes wrong and it will always return 0 (zero) when the operation went as planned. If you write a shell script or batch file that invokes curl, you can always -check the return code to detect problems in the invoked command. Below, -you'll find a list of return codes as of the time of this writing. Over time -we tend to slowly add new ones so if you get a code back not listed here, -please refer to more updated curl documentation for aid. +check the return code to detect problems in the invoked command. Below, you +will find a list of return codes as of the time of this writing. Over time we +tend to slowly add new ones so if you get a code back not listed here, please +refer to more updated curl documentation for aid. A very basic Unix shell script could look like something like this: diff --git a/usingcurl-timeouts.md b/usingcurl-timeouts.md index a9ba4b08e..649bf9951 100644 --- a/usingcurl-timeouts.md +++ b/usingcurl-timeouts.md @@ -62,9 +62,9 @@ the TCP stack send a probe to the other side when there's no traffic, to make sure that it is still there and "alive". By using keep-alive, curl is much more likely to discover that the TCP connection is dead. -Use `--keepalive-time` to specify how often in full seconds you'd like the +Use `--keepalive-time` to specify how often in full seconds you would like the probe to get sent to the peer. The default value is usually set to 7200, which is two full hours. -Sometimes this probing disturbs what you're doing and then you can easily +Sometimes this probing disturbs what you are doing and then you can easily disable it with `--no-keepalive`. diff --git a/usingcurl-uploads.md b/usingcurl-uploads.md index 32acd1883..4f76b24ef 100644 --- a/usingcurl-uploads.md +++ b/usingcurl-uploads.md @@ -69,7 +69,7 @@ then that will be the file name used when stored remotely: curl -T uploadthis ftp://example.com/this/directory/ So if you prefer to select a different file name on the remote side than what -you've used locally, you specify it in the URL: +you have used locally, you specify it in the URL: curl -T uploadthis ftp://example.com/this/directory/remotename @@ -93,7 +93,7 @@ curl/SMTP](usingcurl-smtp.md) section. The general progress meter curl provides (see the [Progress meter](cmdline-progressmeter.md) section) works fine for uploads as well. What needs to be remembered is that the progress meter is automatically -disabled when you're sending output to stdout, and most protocols curl support +disabled when you are sending output to stdout, and most protocols curl support can output something even for an upload. Therefore, you may need to explicitly redirect the downloaded data to a file diff --git a/usingcurl-verbose.md b/usingcurl-verbose.md index a096dea57..5dc4de0c3 100644 --- a/usingcurl-verbose.md +++ b/usingcurl-verbose.md @@ -106,7 +106,7 @@ For this, curl offers two other options that you use instead of `-v`. `--trace [filename]` will save a full trace in the given file name. You can also use '-' (a single minus) instead of a file name to get it passed to -stdout. You'd use it like this: +stdout. You would use it like this: $ curl --trace dump http://example.com @@ -310,7 +310,7 @@ Some of these variables are not available in really old curl versions. lasted. The time will be displayed with millisecond resolution. - %{url_effective} shows the URL that was fetched last. This is particularly - meaningful if you've told curl to follow Location: headers (with `-L`). + meaningful if you have told curl to follow Location: headers (with `-L`). ### Silence