Issue Details (XML | Word | Printable)

Key: MDL-18115
Type: Sub-task Sub-task
Status: Open Open
Priority: Minor Minor
Assignee: Dongsheng Cai
Reporter: Tero Pelander
Votes: 1
Watchers: 1
Operations

Add/Edit UI Mockup to this issue
If you were logged in you would be able to see more operations.
Moodle
MDL-8224

chatd.php not usable with php 5.2

Created: 02/Feb/09 08:06 PM   Updated: 13/Oct/09 02:24 PM
Return to search
Component/s: Chat
Affects Version/s: 1.9.3, 2.0
Fix Version/s: None

Environment:
Linux x86-64, php 5.2.8
Issue Links:
Dependency
 

Database: MySQL
Participants: Dongsheng Cai, Petr Skoda and Tero Pelander
Security Level: None
Affected Branches: MOODLE_19_STABLE, MOODLE_20_STABLE


 Description  « Hide
The chat daemon (mod/chat/chatd.php) isn't usable in php5. The problems include:
- tries to use all cpu time constantly
- randomly exits during usage

Both of these problems can be avoided by using php4 but most current systems no longer have php4 installed.

The chat system requires the use of separate chat daemon for any reasonable amount of users. On the other hand moodle 2.0 requires the use of php5.2.8 or newer. Therefore chat module should be removed unless some coder takes time to upgrade the module.

Additional problems: chatd.php doesn't allow use of ipv6 addresses. This is a definite problem as all other parts do support them. I'm one of the network admins who already has one classroom of Windows computers that don't have ipv4 addresses any longer.


 All   Comments   Change History   Version Control      Sort Order: Ascending order - Click to sort in descending order
Petr Skoda added a comment - 07/Feb/09 09:49 AM
support for ipv6 should be already implemented in 2.0dev

Tero Pelander added a comment - 09/Feb/09 03:56 PM
chatd.php even in 2.0dev doesn't support ipv6. It's obvious from following piece of code:
socket_create(AF_INET, SOCK_STREAM, 0)

AF_INET = ipv4 only
AF_INET6 = ipv6 only

I'm currently using moodle 1.9.3 in ipv6 environment. The rest of the moodle doesn't care if it is used in ipv4 or ipv6.