php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #11587 SSL'd fsockopen would be nice
Submitted: 2001-06-20 14:18 UTC Modified: 2001-08-12 15:38 UTC
From: mitja at doticni dot net Assigned:
Status: Duplicate Package: Feature/Change Request
PHP Version: 4.0.5 OS:
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: mitja at doticni dot net
New email:
PHP Version: OS:

 

 [2001-06-20 14:18 UTC] mitja at doticni dot net
While working on #5865, you could also add generic SSL socket support to fsockopen, something like
fsockopen("ssl://example.com", ...)

don't forget to add support for client certificates/keys, including passing the password to unlock 'em (ok, this would probably require a completely new function).

for connecting to a single server, one solution is running a stunnel daemon:
stunnel -c -d 127.0.0.1:1000 -r example.com:123 -p /certs/blah.pem
and then fsockopen()ing to that port;
however, this is both a security problem (anyone on the machine can connect to that port) and useless, if one wishes to connect to a host that is not known in advance.

another option would be to allow php to talk to exec'd processes (hopefully stunnel works this way; it doesn't when piped), but this requires an extra process per request which is a resource hog. and, well, this is all in openssl already, so ...

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-08-12 15:28 UTC] sebastian@php.net
This extends Bug #5865.

 [2001-08-12 15:36 UTC] wez@php.net
When we have streams, this will be there.
(it's in the pipeline).
--Wez.
 [2001-08-12 15:38 UTC] wez@php.net
Err, I'll update 5865 instead...
--Wez.
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Thu Jan 02 13:01:30 2025 UTC