Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some work on the OS400 port #10994

Closed
wants to merge 5 commits into from
Closed

Some work on the OS400 port #10994

wants to merge 5 commits into from

Conversation

monnerat
Copy link
Contributor

Thanks to pub400.com, I have finally been able to do some work for this platform.
Mainly some fixes, make it up to date, support blob-, webosockets- and header APIs.
Please see the commit comments for more information.

Note that nobody ever used the mime api from ILE/RPG since its creation: I've fixed errors that would have prevented any correct functioning!

I've also considered a possible work on gskit, but the system cert/key files are restricted and there's no way to create user alternative ones. I thus may update code and make it compile successfully, but I can't run it :-( I left a message to request permissions but it seems the admin is ill since febuary. BTW: what would you require to save GsKit? TLS 1.3 I guess... anything more ?

@github-actions github-actions bot added the build label Apr 18, 2023
packages/OS400/make-lib.sh Outdated Show resolved Hide resolved
packages/OS400/make-lib.sh Outdated Show resolved Hide resolved
@bagder
Copy link
Member

bagder commented Apr 18, 2023

/cc @jonrumsey thumbs-up?

@monnerat
Copy link
Contributor Author

Turning it to draft: still some details to tune!

@monnerat monnerat marked this pull request as draft April 18, 2023 14:16
- Rename shell function "system" to "CLcommand" to avoid confusion with
  built-in command.
- Reformat scripts. Fix some indentations. Avoid lines > 80 characters where
  possible.
- Support ASCII runtime development files in a user-defined directory path.
- FIX SONAME detection.
- Drop form API test program compilation (does not exist anymore).
- Support CURLVERSION_ELEVENTH.
- New function curl_url_strerror_ccsid().
- curl_easy_setopt_ccsid() supports blobs and 3 recent string options.
- New function curl_easy_header_ccsid().
- New generic latin1<-->ccsid conversion functions curl_from_ccsid() and
  curl_to_ccsid() for user convenience.
- README.OS400 updated accordingly.
- Removed a leftover QsoSSL support identifier.
- Fix wrong definitions of CURL_ZERO_TERNINATED, curl_mime_data() and
  curl_mime_data_ccsid().
- Add recent definitions, in particular blob, header API and WebSockets
  API.
- Support for CURLVERSION_ELEVENTH.
- New functions for EBCDIC support.

Reflect these changes in README.OS400.
From OS400 V7R4 and above, ILE/RPG implements a limited procedure
overloading feature that can be used to improve curl's typed implementation
of varargs procedures. This commit applies it to curl_easy_setopt(),
curl_multi_setopt(), curl_share_setopt() and curl_easy_getinfo().
@monnerat monnerat marked this pull request as ready for review April 18, 2023 14:58
@monnerat
Copy link
Contributor Author

Should be ready by now...

@jonrumsey
Copy link
Contributor

Thanks @monnerat - the changes look good.

@jay jay closed this in b98db94 Apr 18, 2023
jay pushed a commit that referenced this pull request Apr 18, 2023
- Support CURLVERSION_ELEVENTH.

- New function curl_url_strerror_ccsid().

- curl_easy_setopt_ccsid() supports blobs and 3 recent string options.

- New function curl_easy_header_ccsid().

- New generic latin1<-->ccsid conversion functions curl_from_ccsid() and
  curl_to_ccsid() for user convenience.

- README.OS400 updated accordingly.

- Removed a leftover QsoSSL support identifier.

Closes #10994
jay pushed a commit that referenced this pull request Apr 18, 2023
- Fix wrong definitions of CURL_ZERO_TERNINATED, curl_mime_data() and
  curl_mime_data_ccsid().

- Add recent definitions, in particular blob, header API and WebSockets
  API.

- Support for CURLVERSION_ELEVENTH.

- New functions for EBCDIC support.

Reflect these changes in README.OS400.

Closes #10994
jay pushed a commit that referenced this pull request Apr 18, 2023
- Use V7R4 RPG procedure overloading to improve vararg emulation.

From OS400 V7R4 and above, ILE/RPG implements a limited procedure
overloading feature that can be used to improve curl's typed
implementation of varargs procedures. This commit applies it to
curl_easy_setopt(), curl_multi_setopt(), curl_share_setopt() and
curl_easy_getinfo().

Closes #10994
jay pushed a commit that referenced this pull request Apr 18, 2023
@jay
Copy link
Member

jay commented Apr 18, 2023

Thanks. I left the commits separate and referenced this PR in each one of them.

@monnerat
Copy link
Contributor Author

Thanks for merge @jay !

@monnerat monnerat deleted the os400 branch April 18, 2023 22:10
bch pushed a commit to bch/curl that referenced this pull request Jul 19, 2023
- Rename shell function "system" to "CLcommand" to avoid confusion with
  built-in command.

- Reformat scripts. Fix some indentations. Avoid lines > 80 characters
  where possible.

- Support ASCII runtime development files in a user-defined directory
  path.

- FIX SONAME detection.

- Drop form API test program compilation (does not exist anymore).

Closes curl#10994
bch pushed a commit to bch/curl that referenced this pull request Jul 19, 2023
- Support CURLVERSION_ELEVENTH.

- New function curl_url_strerror_ccsid().

- curl_easy_setopt_ccsid() supports blobs and 3 recent string options.

- New function curl_easy_header_ccsid().

- New generic latin1<-->ccsid conversion functions curl_from_ccsid() and
  curl_to_ccsid() for user convenience.

- README.OS400 updated accordingly.

- Removed a leftover QsoSSL support identifier.

Closes curl#10994
bch pushed a commit to bch/curl that referenced this pull request Jul 19, 2023
- Fix wrong definitions of CURL_ZERO_TERNINATED, curl_mime_data() and
  curl_mime_data_ccsid().

- Add recent definitions, in particular blob, header API and WebSockets
  API.

- Support for CURLVERSION_ELEVENTH.

- New functions for EBCDIC support.

Reflect these changes in README.OS400.

Closes curl#10994
bch pushed a commit to bch/curl that referenced this pull request Jul 19, 2023
- Use V7R4 RPG procedure overloading to improve vararg emulation.

From OS400 V7R4 and above, ILE/RPG implements a limited procedure
overloading feature that can be used to improve curl's typed
implementation of varargs procedures. This commit applies it to
curl_easy_setopt(), curl_multi_setopt(), curl_share_setopt() and
curl_easy_getinfo().

Closes curl#10994
bch pushed a commit to bch/curl that referenced this pull request Jul 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging this pull request may close these issues.

None yet

4 participants