diff options
author | Frank Blaschka <frank.blaschka@de.ibm.com> | 2011-08-07 21:33:49 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-08-13 04:10:15 -0400 |
commit | 96d042a68bc204c1d39abd71dcb29d9fcb1601ce (patch) | |
tree | 3d57c3b508d2d7b9a252ab4c04349b85c03876fc /include/net/iucv | |
parent | 99558ea93ce885ab191df2bf8ef964880e3b34a7 (diff) |
iucv: introduce loadable iucv interface
This patch adds a symbol to dynamically load iucv functions.
Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/iucv')
-rw-r--r-- | include/net/iucv/iucv.h | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/include/net/iucv/iucv.h b/include/net/iucv/iucv.h index 1121baa9f695..0894ced31957 100644 --- a/include/net/iucv/iucv.h +++ b/include/net/iucv/iucv.h | |||
@@ -120,7 +120,7 @@ struct iucv_message { | |||
120 | u32 reply_size; | 120 | u32 reply_size; |
121 | u8 rmmsg[8]; | 121 | u8 rmmsg[8]; |
122 | u8 flags; | 122 | u8 flags; |
123 | }; | 123 | } __packed; |
124 | 124 | ||
125 | /* | 125 | /* |
126 | * struct iucv_handler | 126 | * struct iucv_handler |
@@ -459,3 +459,37 @@ int __iucv_message_send(struct iucv_path *path, struct iucv_message *msg, | |||
459 | int iucv_message_send2way(struct iucv_path *path, struct iucv_message *msg, | 459 | int iucv_message_send2way(struct iucv_path *path, struct iucv_message *msg, |
460 | u8 flags, u32 srccls, void *buffer, size_t size, | 460 | u8 flags, u32 srccls, void *buffer, size_t size, |
461 | void *answer, size_t asize, size_t *residual); | 461 | void *answer, size_t asize, size_t *residual); |
462 | |||
463 | struct iucv_interface { | ||
464 | int (*message_receive)(struct iucv_path *path, struct iucv_message *msg, | ||
465 | u8 flags, void *buffer, size_t size, size_t *residual); | ||
466 | int (*__message_receive)(struct iucv_path *path, | ||
467 | struct iucv_message *msg, u8 flags, void *buffer, size_t size, | ||
468 | size_t *residual); | ||
469 | int (*message_reply)(struct iucv_path *path, struct iucv_message *msg, | ||
470 | u8 flags, void *reply, size_t size); | ||
471 | int (*message_reject)(struct iucv_path *path, struct iucv_message *msg); | ||
472 | int (*message_send)(struct iucv_path *path, struct iucv_message *msg, | ||
473 | u8 flags, u32 srccls, void *buffer, size_t size); | ||
474 | int (*__message_send)(struct iucv_path *path, struct iucv_message *msg, | ||
475 | u8 flags, u32 srccls, void *buffer, size_t size); | ||
476 | int (*message_send2way)(struct iucv_path *path, | ||
477 | struct iucv_message *msg, u8 flags, u32 srccls, void *buffer, | ||
478 | size_t size, void *answer, size_t asize, size_t *residual); | ||
479 | int (*message_purge)(struct iucv_path *path, struct iucv_message *msg, | ||
480 | u32 srccls); | ||
481 | int (*path_accept)(struct iucv_path *path, struct iucv_handler *handler, | ||
482 | u8 userdata[16], void *private); | ||
483 | int (*path_connect)(struct iucv_path *path, | ||
484 | struct iucv_handler *handler, | ||
485 | u8 userid[8], u8 system[8], u8 userdata[16], void *private); | ||
486 | int (*path_quiesce)(struct iucv_path *path, u8 userdata[16]); | ||
487 | int (*path_resume)(struct iucv_path *path, u8 userdata[16]); | ||
488 | int (*path_sever)(struct iucv_path *path, u8 userdata[16]); | ||
489 | int (*iucv_register)(struct iucv_handler *handler, int smp); | ||
490 | void (*iucv_unregister)(struct iucv_handler *handler, int smp); | ||
491 | struct bus_type *bus; | ||
492 | struct device *root; | ||
493 | }; | ||
494 | |||
495 | extern struct iucv_interface iucv_if; | ||