Changes in uspace/srv/net/il/arp/arp.c [849ed54:19f857a] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/net/il/arp/arp.c
r849ed54 r19f857a 43 43 #include <str.h> 44 44 #include <task.h> 45 45 46 #include <ipc/ipc.h> 46 47 #include <ipc/services.h> 47 48 48 #include <net_err.h> 49 #include <net_messages.h> 50 #include <net_modules.h> 51 #include <net_byteorder.h> 52 #include <net_device.h> 53 #include <arp_interface.h> 54 #include <nil_interface.h> 55 #include <protocol_map.h> 56 #include <adt/measured_strings.h> 57 #include <packet/packet.h> 58 #include <packet/packet_client.h> 59 #include <il_messages.h> 60 #include <arp_messages.h> 49 #include "../../err.h" 50 #include "../../messages.h" 51 #include "../../modules.h" 52 53 #include "../../include/byteorder.h" 54 #include "../../include/device.h" 55 #include "../../include/arp_interface.h" 56 #include "../../include/nil_interface.h" 57 #include "../../include/protocol_map.h" 58 59 #include "../../structures/measured_strings.h" 60 #include "../../structures/packet/packet.h" 61 #include "../../structures/packet/packet_client.h" 62 63 #include "../il_messages.h" 61 64 62 65 #include "arp.h" … … 64 67 #include "arp_oc.h" 65 68 #include "arp_module.h" 66 67 68 /** ARP module name. 69 */ 70 #define NAME "ARP protocol" 69 #include "arp_messages.h" 71 70 72 71 /** ARP global data. … … 619 618 } 620 619 621 #ifdef CONFIG_NETWORKING_modular622 623 #include <il_standalone.h>624 625 /** Default thread for new connections.626 *627 * @param[in] iid The initial message identifier.628 * @param[in] icall The initial message call structure.629 *630 */631 static void il_client_connection(ipc_callid_t iid, ipc_call_t * icall)632 {633 /*634 * Accept the connection635 * - Answer the first IPC_M_CONNECT_ME_TO call.636 */637 ipc_answer_0(iid, EOK);638 639 while(true) {640 ipc_call_t answer;641 int answer_count;642 643 /* Clear the answer structure */644 refresh_answer(&answer, &answer_count);645 646 /* Fetch the next message */647 ipc_call_t call;648 ipc_callid_t callid = async_get_call(&call);649 650 /* Process the message */651 int res = il_module_message(callid, &call, &answer, &answer_count);652 653 /* End if said to either by the message or the processing result */654 if ((IPC_GET_METHOD(call) == IPC_M_PHONE_HUNGUP) || (res == EHANGUP))655 return;656 657 /* Answer the message */658 answer_call(callid, res, &answer, answer_count);659 }660 }661 662 /** Starts the module.663 *664 * @param argc The count of the command line arguments. Ignored parameter.665 * @param argv The command line parameters. Ignored parameter.666 *667 * @returns EOK on success.668 * @returns Other error codes as defined for each specific module start function.669 *670 */671 int main(int argc, char *argv[])672 {673 ERROR_DECLARE;674 675 /* Print the module label */676 printf("Task %d - %s\n", task_get_id(), NAME);677 678 /* Start the module */679 if (ERROR_OCCURRED(il_module_start(il_client_connection))) {680 printf(" - ERROR %i\n", ERROR_CODE);681 return ERROR_CODE;682 }683 684 return EOK;685 }686 687 #endif /* CONFIG_NETWORKING_modular */688 689 620 /** @} 690 621 */
Note:
See TracChangeset
for help on using the changeset viewer.