@@ -424,191 +424,179 @@ a file or socket object.");
424
424
425
425
/* Module initialisation */
426
426
427
- static int
428
- ins (PyObject * d , char * symbol , long value )
429
- {
430
- PyObject * v = PyLong_FromLong (value );
431
- if (!v || PyDict_SetItemString (d , symbol , v ) < 0 )
432
- return -1 ;
433
-
434
- Py_DECREF (v );
435
- return 0 ;
436
- }
437
-
438
- #define INS (x ) if (ins(d, #x, (long)x)) return -1
439
427
440
428
static int
441
- all_ins (PyObject * d )
429
+ all_ins (PyObject * m )
442
430
{
443
- if (ins ( d , "LOCK_SH" , ( long ) LOCK_SH )) return -1 ;
444
- if (ins ( d , "LOCK_EX" , ( long ) LOCK_EX )) return -1 ;
445
- if (ins ( d , "LOCK_NB" , ( long ) LOCK_NB )) return -1 ;
446
- if (ins ( d , "LOCK_UN" , ( long ) LOCK_UN )) return -1 ;
431
+ if (PyModule_AddIntMacro ( m , LOCK_SH )) return -1 ;
432
+ if (PyModule_AddIntMacro ( m , LOCK_EX )) return -1 ;
433
+ if (PyModule_AddIntMacro ( m , LOCK_NB )) return -1 ;
434
+ if (PyModule_AddIntMacro ( m , LOCK_UN )) return -1 ;
447
435
/* GNU extensions, as of glibc 2.2.4 */
448
436
#ifdef LOCK_MAND
449
- if (ins ( d , "LOCK_MAND" , ( long ) LOCK_MAND )) return -1 ;
437
+ if (PyModule_AddIntMacro ( m , LOCK_MAND )) return -1 ;
450
438
#endif
451
439
#ifdef LOCK_READ
452
- if (ins ( d , "LOCK_READ" , ( long ) LOCK_READ )) return -1 ;
440
+ if (PyModule_AddIntMacro ( m , LOCK_READ )) return -1 ;
453
441
#endif
454
442
#ifdef LOCK_WRITE
455
- if (ins ( d , "LOCK_WRITE" , ( long ) LOCK_WRITE )) return -1 ;
443
+ if (PyModule_AddIntMacro ( m , LOCK_WRITE )) return -1 ;
456
444
#endif
457
445
#ifdef LOCK_RW
458
- if (ins ( d , "LOCK_RW" , ( long ) LOCK_RW )) return -1 ;
446
+ if (PyModule_AddIntMacro ( m , LOCK_RW )) return -1 ;
459
447
#endif
460
448
461
449
#ifdef F_DUPFD
462
- if (ins ( d , "F_DUPFD" , ( long ) F_DUPFD )) return -1 ;
450
+ if (PyModule_AddIntMacro ( m , F_DUPFD )) return -1 ;
463
451
#endif
464
452
#ifdef F_DUPFD_CLOEXEC
465
- if (ins ( d , "F_DUPFD_CLOEXEC" , ( long ) F_DUPFD_CLOEXEC )) return -1 ;
453
+ if (PyModule_AddIntMacro ( m , F_DUPFD_CLOEXEC )) return -1 ;
466
454
#endif
467
455
#ifdef F_GETFD
468
- if (ins ( d , "F_GETFD" , ( long ) F_GETFD )) return -1 ;
456
+ if (PyModule_AddIntMacro ( m , F_GETFD )) return -1 ;
469
457
#endif
470
458
#ifdef F_SETFD
471
- if (ins ( d , "F_SETFD" , ( long ) F_SETFD )) return -1 ;
459
+ if (PyModule_AddIntMacro ( m , F_SETFD )) return -1 ;
472
460
#endif
473
461
#ifdef F_GETFL
474
- if (ins ( d , "F_GETFL" , ( long ) F_GETFL )) return -1 ;
462
+ if (PyModule_AddIntMacro ( m , F_GETFL )) return -1 ;
475
463
#endif
476
464
#ifdef F_SETFL
477
- if (ins ( d , "F_SETFL" , ( long ) F_SETFL )) return -1 ;
465
+ if (PyModule_AddIntMacro ( m , F_SETFL )) return -1 ;
478
466
#endif
479
467
#ifdef F_GETLK
480
- if (ins ( d , "F_GETLK" , ( long ) F_GETLK )) return -1 ;
468
+ if (PyModule_AddIntMacro ( m , F_GETLK )) return -1 ;
481
469
#endif
482
470
#ifdef F_SETLK
483
- if (ins ( d , "F_SETLK" , ( long ) F_SETLK )) return -1 ;
471
+ if (PyModule_AddIntMacro ( m , F_SETLK )) return -1 ;
484
472
#endif
485
473
#ifdef F_SETLKW
486
- if (ins ( d , "F_SETLKW" , ( long ) F_SETLKW )) return -1 ;
474
+ if (PyModule_AddIntMacro ( m , F_SETLKW )) return -1 ;
487
475
#endif
488
476
#ifdef F_GETOWN
489
- if (ins ( d , "F_GETOWN" , ( long ) F_GETOWN )) return -1 ;
477
+ if (PyModule_AddIntMacro ( m , F_GETOWN )) return -1 ;
490
478
#endif
491
479
#ifdef F_SETOWN
492
- if (ins ( d , "F_SETOWN" , ( long ) F_SETOWN )) return -1 ;
480
+ if (PyModule_AddIntMacro ( m , F_SETOWN )) return -1 ;
493
481
#endif
494
482
#ifdef F_GETSIG
495
- if (ins ( d , "F_GETSIG" , ( long ) F_GETSIG )) return -1 ;
483
+ if (PyModule_AddIntMacro ( m , F_GETSIG )) return -1 ;
496
484
#endif
497
485
#ifdef F_SETSIG
498
- if (ins ( d , "F_SETSIG" , ( long ) F_SETSIG )) return -1 ;
486
+ if (PyModule_AddIntMacro ( m , F_SETSIG )) return -1 ;
499
487
#endif
500
488
#ifdef F_RDLCK
501
- if (ins ( d , "F_RDLCK" , ( long ) F_RDLCK )) return -1 ;
489
+ if (PyModule_AddIntMacro ( m , F_RDLCK )) return -1 ;
502
490
#endif
503
491
#ifdef F_WRLCK
504
- if (ins ( d , "F_WRLCK" , ( long ) F_WRLCK )) return -1 ;
492
+ if (PyModule_AddIntMacro ( m , F_WRLCK )) return -1 ;
505
493
#endif
506
494
#ifdef F_UNLCK
507
- if (ins ( d , "F_UNLCK" , ( long ) F_UNLCK )) return -1 ;
495
+ if (PyModule_AddIntMacro ( m , F_UNLCK )) return -1 ;
508
496
#endif
509
497
/* LFS constants */
510
498
#ifdef F_GETLK64
511
- if (ins ( d , "F_GETLK64" , ( long ) F_GETLK64 )) return -1 ;
499
+ if (PyModule_AddIntMacro ( m , F_GETLK64 )) return -1 ;
512
500
#endif
513
501
#ifdef F_SETLK64
514
- if (ins ( d , "F_SETLK64" , ( long ) F_SETLK64 )) return -1 ;
502
+ if (PyModule_AddIntMacro ( m , F_SETLK64 )) return -1 ;
515
503
#endif
516
504
#ifdef F_SETLKW64
517
- if (ins ( d , "F_SETLKW64" , ( long ) F_SETLKW64 )) return -1 ;
505
+ if (PyModule_AddIntMacro ( m , F_SETLKW64 )) return -1 ;
518
506
#endif
519
507
/* GNU extensions, as of glibc 2.2.4. */
520
508
#ifdef FASYNC
521
- if (ins ( d , "FASYNC" , ( long ) FASYNC )) return -1 ;
509
+ if (PyModule_AddIntMacro ( m , FASYNC )) return -1 ;
522
510
#endif
523
511
#ifdef F_SETLEASE
524
- if (ins ( d , "F_SETLEASE" , ( long ) F_SETLEASE )) return -1 ;
512
+ if (PyModule_AddIntMacro ( m , F_SETLEASE )) return -1 ;
525
513
#endif
526
514
#ifdef F_GETLEASE
527
- if (ins ( d , "F_GETLEASE" , ( long ) F_GETLEASE )) return -1 ;
515
+ if (PyModule_AddIntMacro ( m , F_GETLEASE )) return -1 ;
528
516
#endif
529
517
#ifdef F_NOTIFY
530
- if (ins ( d , "F_NOTIFY" , ( long ) F_NOTIFY )) return -1 ;
518
+ if (PyModule_AddIntMacro ( m , F_NOTIFY )) return -1 ;
531
519
#endif
532
520
/* Old BSD flock(). */
533
521
#ifdef F_EXLCK
534
- if (ins ( d , "F_EXLCK" , ( long ) F_EXLCK )) return -1 ;
522
+ if (PyModule_AddIntMacro ( m , F_EXLCK )) return -1 ;
535
523
#endif
536
524
#ifdef F_SHLCK
537
- if (ins ( d , "F_SHLCK" , ( long ) F_SHLCK )) return -1 ;
525
+ if (PyModule_AddIntMacro ( m , F_SHLCK )) return -1 ;
538
526
#endif
539
527
540
528
/* OS X specifics */
541
529
#ifdef F_FULLFSYNC
542
- if (ins ( d , "F_FULLFSYNC" , ( long ) F_FULLFSYNC )) return -1 ;
530
+ if (PyModule_AddIntMacro ( m , F_FULLFSYNC )) return -1 ;
543
531
#endif
544
532
#ifdef F_NOCACHE
545
- if (ins ( d , "F_NOCACHE" , ( long ) F_NOCACHE )) return -1 ;
533
+ if (PyModule_AddIntMacro ( m , F_NOCACHE )) return -1 ;
546
534
#endif
547
535
548
536
/* For F_{GET|SET}FL */
549
537
#ifdef FD_CLOEXEC
550
- if (ins ( d , "FD_CLOEXEC" , ( long ) FD_CLOEXEC )) return -1 ;
538
+ if (PyModule_AddIntMacro ( m , FD_CLOEXEC )) return -1 ;
551
539
#endif
552
540
553
541
/* For F_NOTIFY */
554
542
#ifdef DN_ACCESS
555
- if (ins ( d , "DN_ACCESS" , ( long ) DN_ACCESS )) return -1 ;
543
+ if (PyModule_AddIntMacro ( m , DN_ACCESS )) return -1 ;
556
544
#endif
557
545
#ifdef DN_MODIFY
558
- if (ins ( d , "DN_MODIFY" , ( long ) DN_MODIFY )) return -1 ;
546
+ if (PyModule_AddIntMacro ( m , DN_MODIFY )) return -1 ;
559
547
#endif
560
548
#ifdef DN_CREATE
561
- if (ins ( d , "DN_CREATE" , ( long ) DN_CREATE )) return -1 ;
549
+ if (PyModule_AddIntMacro ( m , DN_CREATE )) return -1 ;
562
550
#endif
563
551
#ifdef DN_DELETE
564
- if (ins ( d , "DN_DELETE" , ( long ) DN_DELETE )) return -1 ;
552
+ if (PyModule_AddIntMacro ( m , DN_DELETE )) return -1 ;
565
553
#endif
566
554
#ifdef DN_RENAME
567
- if (ins ( d , "DN_RENAME" , ( long ) DN_RENAME )) return -1 ;
555
+ if (PyModule_AddIntMacro ( m , DN_RENAME )) return -1 ;
568
556
#endif
569
557
#ifdef DN_ATTRIB
570
- if (ins ( d , "DN_ATTRIB" , ( long ) DN_ATTRIB )) return -1 ;
558
+ if (PyModule_AddIntMacro ( m , DN_ATTRIB )) return -1 ;
571
559
#endif
572
560
#ifdef DN_MULTISHOT
573
- if (ins ( d , "DN_MULTISHOT" , ( long ) DN_MULTISHOT )) return -1 ;
561
+ if (PyModule_AddIntMacro ( m , DN_MULTISHOT )) return -1 ;
574
562
#endif
575
563
576
564
#ifdef HAVE_STROPTS_H
577
565
/* Unix 98 guarantees that these are in stropts.h. */
578
- INS ( I_PUSH );
579
- INS ( I_POP );
580
- INS ( I_LOOK );
581
- INS ( I_FLUSH );
582
- INS ( I_FLUSHBAND );
583
- INS ( I_SETSIG );
584
- INS ( I_GETSIG );
585
- INS ( I_FIND );
586
- INS ( I_PEEK );
587
- INS ( I_SRDOPT );
588
- INS ( I_GRDOPT );
589
- INS ( I_NREAD );
590
- INS ( I_FDINSERT );
591
- INS ( I_STR );
592
- INS ( I_SWROPT );
566
+ if ( PyModule_AddIntMacro ( m , I_PUSH )) return -1 ;
567
+ if ( PyModule_AddIntMacro ( m , I_POP )) return -1 ;
568
+ if ( PyModule_AddIntMacro ( m , I_LOOK )) return -1 ;
569
+ if ( PyModule_AddIntMacro ( m , I_FLUSH )) return -1 ;
570
+ if ( PyModule_AddIntMacro ( m , I_FLUSHBAND )) return -1 ;
571
+ if ( PyModule_AddIntMacro ( m , I_SETSIG )) return -1 ;
572
+ if ( PyModule_AddIntMacro ( m , I_GETSIG )) return -1 ;
573
+ if ( PyModule_AddIntMacro ( m , I_FIND )) return -1 ;
574
+ if ( PyModule_AddIntMacro ( m , I_PEEK )) return -1 ;
575
+ if ( PyModule_AddIntMacro ( m , I_SRDOPT )) return -1 ;
576
+ if ( PyModule_AddIntMacro ( m , I_GRDOPT )) return -1 ;
577
+ if ( PyModule_AddIntMacro ( m , I_NREAD )) return -1 ;
578
+ if ( PyModule_AddIntMacro ( m , I_FDINSERT )) return -1 ;
579
+ if ( PyModule_AddIntMacro ( m , I_STR )) return -1 ;
580
+ if ( PyModule_AddIntMacro ( m , I_SWROPT )) return -1 ;
593
581
#ifdef I_GWROPT
594
582
/* despite the comment above, old-ish glibcs miss a couple... */
595
- INS ( I_GWROPT );
596
- #endif
597
- INS ( I_SENDFD );
598
- INS ( I_RECVFD );
599
- INS ( I_LIST );
600
- INS ( I_ATMARK );
601
- INS ( I_CKBAND );
602
- INS ( I_GETBAND );
603
- INS ( I_CANPUT );
604
- INS ( I_SETCLTIME );
583
+ if ( PyModule_AddIntMacro ( m , I_GWROPT )) return -1 ;
584
+ #endif
585
+ if ( PyModule_AddIntMacro ( m , I_SENDFD )) return -1 ;
586
+ if ( PyModule_AddIntMacro ( m , I_RECVFD )) return -1 ;
587
+ if ( PyModule_AddIntMacro ( m , I_LIST )) return -1 ;
588
+ if ( PyModule_AddIntMacro ( m , I_ATMARK )) return -1 ;
589
+ if ( PyModule_AddIntMacro ( m , I_CKBAND )) return -1 ;
590
+ if ( PyModule_AddIntMacro ( m , I_GETBAND )) return -1 ;
591
+ if ( PyModule_AddIntMacro ( m , I_CANPUT )) return -1 ;
592
+ if ( PyModule_AddIntMacro ( m , I_SETCLTIME )) return -1 ;
605
593
#ifdef I_GETCLTIME
606
- INS ( I_GETCLTIME );
594
+ if ( PyModule_AddIntMacro ( m , I_GETCLTIME )) return -1 ;
607
595
#endif
608
- INS ( I_LINK );
609
- INS ( I_UNLINK );
610
- INS ( I_PLINK );
611
- INS ( I_PUNLINK );
596
+ if ( PyModule_AddIntMacro ( m , I_LINK )) return -1 ;
597
+ if ( PyModule_AddIntMacro ( m , I_UNLINK )) return -1 ;
598
+ if ( PyModule_AddIntMacro ( m , I_PLINK )) return -1 ;
599
+ if ( PyModule_AddIntMacro ( m , I_PUNLINK )) return -1 ;
612
600
#endif
613
601
614
602
return 0 ;
@@ -630,15 +618,14 @@ static struct PyModuleDef fcntlmodule = {
630
618
PyMODINIT_FUNC
631
619
PyInit_fcntl (void )
632
620
{
633
- PyObject * m , * d ;
621
+ PyObject * m ;
634
622
635
623
/* Create the module and add the functions and documentation */
636
624
m = PyModule_Create (& fcntlmodule );
637
625
if (m == NULL )
638
626
return NULL ;
639
627
640
628
/* Add some symbolic constants to the module */
641
- d = PyModule_GetDict (m );
642
- all_ins (d );
629
+ all_ins (m );
643
630
return m ;
644
631
}
0 commit comments