~ubuntu-branches/ubuntu/dapper/linux-source-2.6.15/dapper-updates

« back to all changes in this revision

Viewing changes to ipc/mqueue.c

  • Committer: Bazaar Package Importer
  • Author(s): Stefan Bader, Stefan Bader, Upstream Kernel Changes
  • Date: 2009-03-16 17:26:53 UTC
  • mfrom: (41.1.8 dapper-security)
  • Revision ID: james.westby@ubuntu.com-20090316172653-tfjmtzutjafofqct
Tags: 2.6.15-54.76
[ Stefan Bader ]

* Fixing up powerpc specific syscalls
  - CVE-2009-0029

[ Upstream Kernel Changes ]

* NFS: Remove the buggy lock-if-signalled case from do_setlk()
  - CVE-2008-4307
* sctp: Avoid memory overflow while FWD-TSN chunk is received with bad
  stream ID
  - CVE-2009-0065
* net: 4 bytes kernel memory disclosure in SO_BSDCOMPAT gsopt try #2
  - CVE-2009-0676
* sparc: Fix mremap address range validation.
  - CVE-2008-6107
* copy_process: fix CLONE_PARENT && parent_exec_id interaction
  - CVE-2009-0028
* dell_rbu: use scnprintf() instead of less secure sprintf()
  - CVE-2009-0322
* drivers/net/skfp: if !capable(CAP_NET_ADMIN): inverted logic
  - CVE-2009-0675
* x86_64: Implement is_compat_task the right way
  - CVE-2009-0834
* x86-64: syscall-audit: fix 32/64 syscall hole
  - CVE-2009-0834
* x86-64: seccomp: fix 32/64 syscall hole
  - CVE-2009-0835
* shm: fix shmctl(SHM_INFO) lockup with !CONFIG_SHMEM
  - CVE-2009-0859
* udf: Fix oops when invalid character in
  filename occurs
  - LP: #321606
* Convert all system calls to return a long
  - CVE-2009-0029
* Rename old_readdir to sys_old_readdir
  - CVE-2009-0029
* Remove __attribute__((weak)) from sys_pipe/sys_pipe2
  - CVE-2009-0029
* Make sys_syslog a conditional system call
  - CVE-2009-0029
* System call wrapper infrastructure
  - CVE-2009-0029
* powerpc: Enable syscall wrappers for 64-bit
  - CVE-2009-0029
* s390: enable system call wrappers
  - CVE-2009-0029
* System call wrapper special cases
  - CVE-2009-0029
* Bump ABI
* System call wrappers part 01
  - CVE-2009-0029
* System call wrappers part 02
  - CVE-2009-0029
* System call wrappers part 03
  - CVE-2009-0029
* System call wrappers part 04
  - CVE-2009-0029
* System call wrappers part 05
  - CVE-2009-0029
* System call wrappers part 06
  - CVE-2009-0029
* System call wrappers part 07
  - CVE-2009-0029
* System call wrappers part 08
  - CVE-2009-0029
* System call wrappers part 09
  - CVE-2009-0029
* System call wrappers part 10
  - CVE-2009-0029
* System call wrappers part 11
  - CVE-2009-0029
* System call wrappers part 12
  - CVE-2009-0029
* System call wrappers part 13
  - CVE-2009-0029
* System call wrappers part 14
  - CVE-2009-0029
* System call wrappers part 15
  - CVE-2009-0029
* System call wrappers part 16
  - CVE-2009-0029
* System call wrappers part 17
  - CVE-2009-0029
* System call wrappers part 18
  - CVE-2009-0029
* System call wrappers part 19
  - CVE-2009-0029
* System call wrappers part 20
  - CVE-2009-0029
* System call wrappers part 21
  - CVE-2009-0029
* System call wrappers part 22
  - CVE-2009-0029
* System call wrappers part 23
  - CVE-2009-0029
* System call wrappers part 24
  - CVE-2009-0029
* System call wrappers part 25
  - CVE-2009-0029
* System call wrappers part 26
  - CVE-2009-0029
* System call wrappers part 27
  - CVE-2009-0029
* System call wrappers part 28
  - CVE-2009-0029
* System call wrappers part 29
  - CVE-2009-0029
* System call wrappers part 32
  - CVE-2009-0029
* System call wrappers part 33
  - CVE-2009-0029
* s390 specific system call wrappers
  - CVE-2009-0029
* sparc: Enable syscall wrappers for 64-bit (CVE-2009-0029)
  - CVE-2009-0029
* syscall define: fix uml compile bug
  - CVE-2009-0029
* Fixing up the syscall wrappers to match the Dapper (2.6.15) kernel
  - CVE-2009-0029

Show diffs side-by-side

added added

removed removed

Lines of Context:
647
647
        return dentry_open(dentry, mqueue_mnt, oflag);
648
648
}
649
649
 
650
 
asmlinkage long sys_mq_open(const char __user *u_name, int oflag, mode_t mode,
651
 
                                struct mq_attr __user *u_attr)
 
650
SYSCALL_DEFINE4(mq_open, const char __user *, u_name, int, oflag, mode_t, mode,
 
651
                struct mq_attr __user *, u_attr)
652
652
{
653
653
        struct dentry *dentry;
654
654
        struct file *filp;
710
710
        return fd;
711
711
}
712
712
 
713
 
asmlinkage long sys_mq_unlink(const char __user *u_name)
 
713
SYSCALL_DEFINE1(mq_unlink, const char __user *, u_name)
714
714
{
715
715
        int err;
716
716
        char *name;
799
799
        sender->state = STATE_READY;
800
800
}
801
801
 
802
 
asmlinkage long sys_mq_timedsend(mqd_t mqdes, const char __user *u_msg_ptr,
803
 
        size_t msg_len, unsigned int msg_prio,
804
 
        const struct timespec __user *u_abs_timeout)
 
802
SYSCALL_DEFINE5(mq_timedsend, mqd_t, mqdes, const char __user *, u_msg_ptr,
 
803
                size_t, msg_len, unsigned int, msg_prio,
 
804
                const struct timespec __user *, u_abs_timeout)
805
805
{
806
806
        struct file *filp;
807
807
        struct inode *inode;
882
882
        return ret;
883
883
}
884
884
 
885
 
asmlinkage ssize_t sys_mq_timedreceive(mqd_t mqdes, char __user *u_msg_ptr,
886
 
        size_t msg_len, unsigned int __user *u_msg_prio,
887
 
        const struct timespec __user *u_abs_timeout)
 
885
SYSCALL_DEFINE5(mq_timedreceive, mqd_t, mqdes, char __user *, u_msg_ptr,
 
886
                size_t, msg_len, unsigned int __user *, u_msg_prio,
 
887
                const struct timespec __user *, u_abs_timeout)
888
888
{
889
889
        long timeout;
890
890
        ssize_t ret;
962
962
 * and he isn't currently owner of notification, will be silently discarded.
963
963
 * It isn't explicitly defined in the POSIX.
964
964
 */
965
 
asmlinkage long sys_mq_notify(mqd_t mqdes,
966
 
                                const struct sigevent __user *u_notification)
 
965
SYSCALL_DEFINE2(mq_notify, mqd_t, mqdes,
 
966
                const struct sigevent __user *, u_notification)
967
967
{
968
968
        int ret;
969
969
        struct file *filp;
1081
1081
        return ret;
1082
1082
}
1083
1083
 
1084
 
asmlinkage long sys_mq_getsetattr(mqd_t mqdes,
1085
 
                        const struct mq_attr __user *u_mqstat,
1086
 
                        struct mq_attr __user *u_omqstat)
 
1084
SYSCALL_DEFINE3(mq_getsetattr, mqd_t, mqdes,
 
1085
                const struct mq_attr __user *, u_mqstat,
 
1086
                struct mq_attr __user *, u_omqstat)
1087
1087
{
1088
1088
        int ret;
1089
1089
        struct mq_attr mqstat, omqstat;