Project

General

Profile

Actions

Feature #1049

open

Write network events to FIFO file.

Added by Hammel about 1 year ago. Updated about 1 year ago.

Status:
In Progress
Priority:
High
Assignee:
Target version:
Start date:
17 Oct 2023
Due date:
% Done:

10%

Estimated time:
Severity:
03 - Medium

Description

eth.c is monitoring the network interfaces to see when an interface changes state in order to bring it up or down.

The events that are being monitored should be written to a FIFO. This will allow other apps to be notified of network changes.

Actions #1

Updated by Hammel about 1 year ago

  • Blocks Bug #945: Don't show date/time if no network connection is available. added
Actions #2

Updated by Hammel about 1 year ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 10

This might be best implemented using Message Queues for IPC.

In this case we want the mtype to be something like

(APP_ID << 16) | EVENT_TYPE

This would allow notifications to any registered app of any event type. Registration could be done using a Message Queue that piboxd opens for inbound messages of type 0 with the APP_ID sent by the application, possibly with the event types they are interested in (this is overkill design but it makes it more flexible to use for future needs). piboxd posts event messages to registered listeners of the event types requested. The app just listens for message to it and deals with them as required.

Alternatively, the mtype might just be APP_ID with the mtext field (re: data block) containing an EVENT_TYPE bit field. This might be better since it means the registration and the event notification structures are the same.

Actions #3

Updated by Hammel about 1 year ago

  • Blocks deleted (Bug #945: Don't show date/time if no network connection is available.)
Actions #4

Updated by Hammel about 1 year ago

  • Priority changed from Immediate to High
  • Severity changed from 01 - Critical to 03 - Medium

I'm not sure this is necessary. Other apps just need to know if there is an IP address. Launcher already does this so it's easy to propagate to other apps.

Moving to much lower priority in case I might want to do this later.

Actions

Also available in: Atom PDF