Lines Matching refs:msqid
398 static int msgctl_down(struct ipc_namespace *ns, int msqid, int cmd, in msgctl_down() argument
408 ipcp = ipcctl_obtain_check(ns, &msg_ids(ns), msqid, cmd, in msgctl_down()
474 static int msgctl_info(struct ipc_namespace *ns, int msqid, in msgctl_info() argument
510 static int msgctl_stat(struct ipc_namespace *ns, int msqid, in msgctl_stat() argument
520 msq = msq_obtain_object(ns, msqid); in msgctl_stat()
526 msq = msq_obtain_object_check(ns, msqid); in msgctl_stat()
589 static long ksys_msgctl(int msqid, int cmd, struct msqid_ds __user *buf, int version) in ksys_msgctl() argument
595 if (msqid < 0 || cmd < 0) in ksys_msgctl()
604 err = msgctl_info(ns, msqid, cmd, &msginfo); in ksys_msgctl()
614 err = msgctl_stat(ns, msqid, cmd, &msqid64); in ksys_msgctl()
623 return msgctl_down(ns, msqid, cmd, &msqid64.msg_perm, in ksys_msgctl()
626 return msgctl_down(ns, msqid, cmd, NULL, 0); in ksys_msgctl()
632 SYSCALL_DEFINE3(msgctl, int, msqid, int, cmd, struct msqid_ds __user *, buf) in SYSCALL_DEFINE3() argument
634 return ksys_msgctl(msqid, cmd, buf, IPC_64); in SYSCALL_DEFINE3()
638 long ksys_old_msgctl(int msqid, int cmd, struct msqid_ds __user *buf) in ksys_old_msgctl() argument
642 return ksys_msgctl(msqid, cmd, buf, version); in ksys_old_msgctl()
645 SYSCALL_DEFINE3(old_msgctl, int, msqid, int, cmd, struct msqid_ds __user *, buf) in SYSCALL_DEFINE3() argument
647 return ksys_old_msgctl(msqid, cmd, buf); in SYSCALL_DEFINE3()
724 static long compat_ksys_msgctl(int msqid, int cmd, void __user *uptr, int version) in compat_ksys_msgctl() argument
732 if (msqid < 0 || cmd < 0) in compat_ksys_msgctl()
739 err = msgctl_info(ns, msqid, cmd, &msginfo); in compat_ksys_msgctl()
749 err = msgctl_stat(ns, msqid, cmd, &msqid64); in compat_ksys_msgctl()
758 return msgctl_down(ns, msqid, cmd, &msqid64.msg_perm, msqid64.msg_qbytes); in compat_ksys_msgctl()
760 return msgctl_down(ns, msqid, cmd, NULL, 0); in compat_ksys_msgctl()
766 COMPAT_SYSCALL_DEFINE3(msgctl, int, msqid, int, cmd, void __user *, uptr) in COMPAT_SYSCALL_DEFINE3() argument
768 return compat_ksys_msgctl(msqid, cmd, uptr, IPC_64); in COMPAT_SYSCALL_DEFINE3()
772 long compat_ksys_old_msgctl(int msqid, int cmd, void __user *uptr) in compat_ksys_old_msgctl() argument
776 return compat_ksys_msgctl(msqid, cmd, uptr, version); in compat_ksys_old_msgctl()
779 COMPAT_SYSCALL_DEFINE3(old_msgctl, int, msqid, int, cmd, void __user *, uptr) in COMPAT_SYSCALL_DEFINE3() argument
781 return compat_ksys_old_msgctl(msqid, cmd, uptr); in COMPAT_SYSCALL_DEFINE3()
840 static long do_msgsnd(int msqid, long mtype, void __user *mtext, in do_msgsnd() argument
851 if (msgsz > ns->msg_ctlmax || (long) msgsz < 0 || msqid < 0) in do_msgsnd()
864 msq = msq_obtain_object_check(ns, msqid); in do_msgsnd()
953 long ksys_msgsnd(int msqid, struct msgbuf __user *msgp, size_t msgsz, in ksys_msgsnd() argument
960 return do_msgsnd(msqid, mtype, msgp->mtext, msgsz, msgflg); in ksys_msgsnd()
963 SYSCALL_DEFINE4(msgsnd, int, msqid, struct msgbuf __user *, msgp, size_t, msgsz, in SYSCALL_DEFINE4() argument
966 return ksys_msgsnd(msqid, msgp, msgsz, msgflg); in SYSCALL_DEFINE4()
976 long compat_ksys_msgsnd(int msqid, compat_uptr_t msgp, in compat_ksys_msgsnd() argument
984 return do_msgsnd(msqid, mtype, up->mtext, (ssize_t)msgsz, msgflg); in compat_ksys_msgsnd()
987 COMPAT_SYSCALL_DEFINE4(msgsnd, int, msqid, compat_uptr_t, msgp, in COMPAT_SYSCALL_DEFINE4() argument
990 return compat_ksys_msgsnd(msqid, msgp, msgsz, msgflg); in COMPAT_SYSCALL_DEFINE4()
1090 static long do_msgrcv(int msqid, void __user *buf, size_t bufsz, long msgtyp, int msgflg, in do_msgrcv() argument
1101 if (msqid < 0 || (long) bufsz < 0) in do_msgrcv()
1114 msq = msq_obtain_object_check(ns, msqid); in do_msgrcv()
1256 long ksys_msgrcv(int msqid, struct msgbuf __user *msgp, size_t msgsz, in ksys_msgrcv() argument
1259 return do_msgrcv(msqid, msgp, msgsz, msgtyp, msgflg, do_msg_fill); in ksys_msgrcv()
1262 SYSCALL_DEFINE5(msgrcv, int, msqid, struct msgbuf __user *, msgp, size_t, msgsz, in SYSCALL_DEFINE5() argument
1265 return ksys_msgrcv(msqid, msgp, msgsz, msgtyp, msgflg); in SYSCALL_DEFINE5()
1283 long compat_ksys_msgrcv(int msqid, compat_uptr_t msgp, compat_ssize_t msgsz, in compat_ksys_msgrcv() argument
1286 return do_msgrcv(msqid, compat_ptr(msgp), (ssize_t)msgsz, (long)msgtyp, in compat_ksys_msgrcv()
1290 COMPAT_SYSCALL_DEFINE5(msgrcv, int, msqid, compat_uptr_t, msgp, in COMPAT_SYSCALL_DEFINE5() argument
1294 return compat_ksys_msgrcv(msqid, msgp, msgsz, msgtyp, msgflg); in COMPAT_SYSCALL_DEFINE5()